检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
发送音频数据 在收到“开始识别”的响应之后,可以开始发送音频数据。为节省流量,音频以二进制数据帧形式(binary message)的方式发送。 音频数据将分片发送,也即在获得一定量音频数据的同时就可以发送一个binary message,每个分片建议在50ms~1000ms之间
使用HTML5 Websocket API发送websocket请求如何携带token 浏览器 WebSocket API 是 HTML5 提供的一种在 TCP 连接上进行全双工通讯协议的 API, 但 WebSocket API 不支持设置 Headers,如需设置 Headers
检查有没有违规、敏感词、电话号码等信息。 会议记录 对会议记录的音频文件,进行快速的识别,转化成文字,方便进行会议记录。 语音短消息 通过语音发送或者接收短消息时,将音频短消息转文字,提升阅读效率和交互体验。 游戏娱乐 将游戏娱乐中的语音聊天转成文字消息,提升用户阅读效率,提升用户体验。
实时语音识别分为开始识别、发送音频数据、结束识别,断开连接四个阶段。 开始阶段需要发送开始指令,包含采样率,音频格式,是否返回中间结果等配置信息。服务端会返回一个开始响应。 发送音频阶段客户端会分片发送音频数据,服务会返回识别结果或者其他事件,如音频超时,静音部分过长等。 音频发送结束后,客户
客户端长时间没有发送语音,服务端超过20s没有收到语音,就会报这个错误。 解决方案 1. 检查代码是否存在发送音频后睡眠过多时间。 2. 检查是否发送end请求,是否关闭客户端。超过20s没有发送数据同时也没有断开连接,就会报该错误。在使用完毕后一定要记得断开与服务端连接。 父主题:
互过程如图 客户端和服务端交互流程所示,主要分为开始识别、发送音频数据,结束识别、断开连接四个步骤。 websocket接口同http接口一致按次计费,只要建立连接成功,发送音频,服务开始识别,则本次调用计费生效。如果用户发送错误end请求或者持续20s未发送音频而产生了报错,该
结束识别 功能介绍 对于识别中的对话,需要在Websocket上发送“结束识别”的请求来取消或结束识别。 "结束识别"请求使用文本类型的数据帧(text message)发送,命令和参数以json字符串的形式提供。 请求消息 表1 参数说明 参数名 是否必选 参数类型 说明 command
Websocket握手请求 功能介绍 本接口提供实时流式语音合成。用户每次建立连接,发送待合成文本,服务端将合成结果响应给用户。一次连接只能发送一次文本,如果有多段文本需要合成,需要多次建立连接。实时语音合成和语音合成均属于语音合成接口,采用完全相同的计费规则,两者价格梯度可互相叠加,可参考价格计算器。
客户端与语音合成引擎建立Websocket连接后,可以发送开始语音合成请求进行语音合成。如果客户端基于该Websocket连接发送多次合成请求,需在每次请求重新建立websocket连接,一次连接只能处理一次合成请求。 请求消息 表1 参数说明 名称 参数类型 是否必选 说明 command
s://curl.haxx.se/。 编码 通过编码调用接口,组装请求消息,并发送处理请求消息。 REST客户端 Mozilla、Google都为REST提供了图形化的浏览器插件,发送处理请求消息。下载postman请参见https://www.getpostman.com/。 父主题:
配置串值的范围不合法。 时序不正确,比如连续发送两次“开始识别”指令。 识别过程中发生错误,比如音频解码发生错误。 出现错误响应时,如果已经在一个会话中了,会再发送一个“结束识别”的响应,表示识别会话结束。如果会话还没有开始,那么发送此错误响应后不做其它操作。此后的音频数据都被忽略,直到收到下一个“开始识别”请求。
当合成引擎处理完合成请求后,会发送合成结束响应。客户端收到该响应后关闭当前Websocket链接即可。 响应消息 表1 响应参数 名称 参数类型 说明 resp_type String 响应类型。参数值为END,表示语音合成结束。 trace_id String 服务内部的令牌,可用于在日志中追溯具体流程。
语音合成引擎收到实时语音合成请求时,首先向客户端发送合成开始响应,表示开始处理语音合成请求。 响应消息 表1 响应参数 名称 参数类型 说明 resp_type String 响应类型。参数值为START,表示开始语音合成。 trace_id String 服务内部的令牌,可用于在日志中追溯具体流程。
识别结果响应 服务端在收到客户端发送的连续音频数据后, 当服务端识别出结果后会实时向客户端按句推送识别结果响应消息, 以json字符串形式放置在text message中。 响应消息 表1 响应参数 参数名 参数类型 说明 resp_type String 响应类型。参数值为RESULT,表示识别结果响应。
如何查看实时语音识别的中间结果 实时语音识别分为开始识别、发送音频数据、结束识别,断开连接四个阶段。在使用API或SDK时,可以通过将interim_results参数设置为yes,将识别过程的中间结果返回。如果设置为no,则会等每句话完毕才会返回识别结果。详细参数说明请见实时语音识别。
由于WebSocket是全双工的,因此响应就是从服务器端发送给客户端的消息,但也并不是所有的请求信息都有一条对应的响应。服务器端收到“开始识别”请求时,会给出如下响应消息,以json字符串形式放置在text message中。 响应消息 表1 响应参数 参数名 参数类型 说明 resp_type
当wss握手请求收到成功响应后,客户端到服务端的通信协议会升级为Websocket协议。通过Websocket协议,客户端发送开始识别请求,用于配置实时语音识别的配置信息。 请求消息 表1 参数说明 参数名 是否必选 参数类型 说明 command 是 String 表示客户端发送开始识别请求,参数值需设置为START。
0302 内部服务异常。 请联系技术支持工程师。 SIS.0303 引擎连接失败。 请重试,多次出现请联系专业工程师。 SIS.0304 音频等待超时。 客户端长时间没有发送语音,服务端超过20s没有收到语音会产生该报错。 请减小数据发送间隔。 检查代码是否存在发送音频后睡眠过多时间。
对应请求消息头,响应同样也有消息头,如“Content-type”。SIS服务响应消息头无特殊用途,可用于定位问题使用。 响应消息体 响应消息体通常以结构化格式返回,与响应消息头中Content-type对应,传递除响应消息头之外的内容。 对于一句话识别接口,返回如下消息体。格式请具体参考一句话识别响应消息部分。
采用Base64编码的随机16字节长的字符序列。用来发送给服务器使用,服务器会使用此字段组装成另一个key值放在握手返回信息里发送客户端。 x3JJHMbDL1EzLkh9GBhXDw== Sec-WebSocket-Version 发送WebSocket握手请求时,包含该头域。 标识了客户端支持WebSocket协议的版本。