实时语音识别
接口简介
实时语音识别接口对音频流进行实时识别,达到“边说边出文本”的效果,可应用于对实时性有要求的场景,如语音机器人、智能会议、智能硬件、直播字幕等。
请求参数
请求URL: wss://ap-open-ws.service-z0.qiniuapp.com/asr?key1=value1&key2=value2
请求方式: WebSocket
请求参数:
- OnOpen,params部分
放在 URL Query 中,具体参数如下:
参数名称 | 类型 | 是否必选 | 说明 |
---|---|---|---|
voice_type | int | Y | 数据格式,1->pcm(wav);默认1 |
voice_encode | int | Y | 数据编码格式,1->s16le; 默认1 |
voice_sample | float | Y | 数据采样率;默认16000 |
needvad | int32 | Y | 是否需要vad;0->关闭;1->开启; 默认1 |
need_partial | int32 | Y | 是否返回partial文本,1->返回,0-> 不返回;默认1 |
maxsil | int32 | Y | 最长静音间隔,单位秒,默认10s |
need_words | int32 | Y | 是否返回词语的对齐信息,1->返回, 0->不返回;默认0。 以字段words返回,列表格式。 |
model_type | int32 | N | 模型id,默认"0"。 0: 普通话; en: 英语; cantonese: 粤语; cn_en_16k: 中英混合 |
voice_id | string | N | 数据流id,不同流不同 |
force_final | int32 | N | 是否在text为空的时候返回final信息, 1->强制返回;0->不强制返回。 默认情况下,如果text为空, 不会返回final信息。 |
vad_sil_thres | float | N | vad断句的累积时间,大于等于0, 如果设置为0,或者没设置,系统默认 |
e | int32 | Y | 请求时间戳, 单位秒 |
token | string | Y | 请求签名, 签算方式 |
hot_words | string | N | 提供热词,格式为: hot_words=热词1,因子1;热词2,因子2,每个热词由热词本身和方法因子以英文逗号隔开,不同热词通过;隔开,最多100个热词,每个热词40字节以内。由于潜在的http服务对url大小的限制,以实际支持的热词个数为准 |
- OnMessage
二进制音频流片段,间隔200ms发送发送一个数据块,单通道。
- 结束session
发送字符串 EOS 到后台,后台收到后将所有文本返回,最后一个json的ended=1表示存储在server的数据发送完毕, client可以安全关闭ws。此后再发送语音数据后台将不做任何处理。
返回参数说明
参数名称 | 类型 | 说明 |
---|---|---|
uuid | string | 服务端生成的uuid |
ended | int32 | 是否是websocket最后一条数据,0:非最后一条数据,1: 最后一条数据。在客户端发送"EOS"(即请求关闭websocket) 后服务端响应的标识。 |
final | int32 | 分片结束,当前消息的transcript为该片段最终结果,否则为partial结果 |
transcript | string | 语音的文本, 如果final=0, 则为partinal结果 (后面可能会更改),final=1为该片段最终结果 |
start_seq | int32 | 该文本所在的切片的起点(包含), 否则为-1 |
end_seq | int32 | 为该文本所在的切片的终点(包含),否则为-1 |
start_time | float | 该片段的起始时间,毫秒 |
end_time | float | 该片段的终止时间,毫秒 |
seg_begin | int32 | 是否分段开始: 1:是; 0:不是。 一般分段后返回 |
partial_transcript | string | partial结果文本, 开启need_partial后返回 |
spk_begin | int32 | 是否是vad分段开始说话的开始1:是分段开始说话; 0:不是。 注意,每个分段只提醒一次 |
seg_index | int32 | 当前返回是第几个vad分段上, 从0开始 |
long_sil | int32 | 是否长时间静音,0:否;1:是 |
words | list | 返回词语的对齐信息, 参数need_words=1时返回详细内存见下表。 |
words字段参数说明
参数名称 | 类型 | 说明 |
---|---|---|
word | string | 词语本身,包括标点符号 |
seg_start | float32 | 该词语相对当前分段的起始时间, 毫秒 |
seg_end | float32 | 该词语相对当前分段的终止时间, 毫秒 |
voice_start | float32 | 该词语相对整个数据流的起始时间, 毫秒 |
voice_end | float32 | 该词语相对整个数据流的终止时间, 毫秒 |
返回示例
{'uuid': '202001031457190636140338391943568', 'final': 0, 'ended': 0, 'transcript': '',
'start_time': 1, 'end_time': 1.25, 'confidence': 1, 'long_sil': 0}
{'uuid': '202001031457190636140338391943568', 'final': 0, 'ended': 0, 'transcript': '',
'start_time': 1, 'end_time': 1.5, 'confidence': 1, 'long_sil': 0}
{'uuid': '202001031457190636140338391943568', 'final': 0, 'ended': 0, 'transcript': '',
'start_time': 1, 'end_time': 1.75, 'confidence': 1, 'long_sil': 0}
{'uuid': '202001031457190636140338391943568', 'final': 0, 'ended': 0, 'transcript': '',
'start_time': 1, 'end_time': 2, 'confidence': 1, 'long_sil': 0}
{'uuid': '202001031457190636140338391943568', 'final': 0, 'ended': 0, 'transcript': '',
'start_time': 1, 'end_time': 2.25, 'confidence': 1, 'long_sil': 0}
{'uuid': '202001031457190636140338391943568', 'final': 0, 'ended': 0, 'transcript': '',
'start_time': 1, 'end_time': 2.5, 'confidence': 1, 'long_sil': 0}
{'uuid': '202001031457190636140338391943568', 'final': 0, 'ended': 0, 'transcript': '',
'start_time': 1, 'end_time': 2.75, 'confidence': 1, 'long_sil': 0}
{'uuid': '202001031457190636140338391943568', 'final': 0, 'ended': 0, 'transcript': '',
'start_time': 1, 'end_time': 3, 'confidence': 1, 'long_sil': 0}
{'uuid': '202001031457190636140338391943568', 'final': 0, 'ended': 0, 'transcript': '逾期',
'start_time': 1, 'end_time': 3.25, 'confidence': 1, 'long_sil': 0}
{'uuid': '202001031457190636140338391943568', 'final': 0, 'ended': 0, 'transcript': '逾期了',
'start_time': 1, 'end_time': 3.5, 'confidence': 1, 'long_sil': 0}
{'uuid': '202001031457190636140338391943568', 'final': 1, 'ended': 1, 'transcript': '逾期了怎么
办', 'start_time': 1, 'end_time': 3.56938, 'confidence': 0.361428, 'long_sil': 0}
错误码
关闭错误码 | 说明 |
---|---|
1000 | 正常关闭 |
4010 | 参数错误 |
4011 | 解码错误 |
4012 | 转码错误 |
4013 | 鉴权错误 |
4014 | 超过单点最大连接数 |
4015 | 无法解析解码文本 |
价格
1.5元/小时
文档反馈
(如有产品使用问题,请 提交工单)