# 语音请求
# 功能说明
语音请求接口接收用户上传的流式语音包,转换为文本后进行自然语言分析,最后检索资源,返回结果
# 请求uri
/xwopenapi/speech
# 请求类型
websocket
# 请求参数
接口请求内容需要按照公共参数中的websocket请求格式传入,其中content
字段为以下结构json序列化base64编码结果:
字段名 | 类型 | 必填 | 描述 |
---|---|---|---|
speech.voice_seq | int | 是 | 同一个语音流中请求包的自增序号,从0开始;对于speex等类型的压缩语音,是指压缩前原始语音的偏移;例如:0,3200,6400,9600.... |
speech.is_voice_end | bool | 否 | 标记是否是尾包;true-是,false-不是,默认false |
speech.voice_len | int | 是 | 该语音请求中语音数据的长度;对于speex等类型的压缩语音,是指压缩前原始语音的长度;需要跟解压后语音的长度一致; |
speech.samples_per_sec | int | 是 | 采样率,8000或16000 |
speech.bits_per_sample | int | 是 | 采样点类型,固定为16 |
speech.voice_file_type | int | 是 | 语音文件类型;1:raw 2:wav |
speech.voice_encode_type | int | 是 | 语音编码类型;1:pcm 2:adpcm 3:feature 4:speex 5:amr 6:silk |
speech.voice_data | string | 是 | 音频流数据base64编码后字符串 |
speech_config.head_silence_thres | uint32 | No | 默认为5000,即5s长度语音vad 语音前部静音阈值,超过该阈值返回错误,等待用户多久说话的意思,一直不说话认为流程结束 |
speech_config.tail_silence_thres | uint32 | No | 默认为500,即500ms vad尾部静音语音尾部静音阈值,停顿多久认为用户说话结束的意思 |
speech_config.local_vad | bool | No | 是否启用云端vad检测 默认0 0-本地vad,1-云端vad |
speech_config.awake_cloud | bool | Yes | 是否采用云端唤醒 |
speech_config.profile_type | int | Yes | 近场还是远场 0-远场,1-近场 默认远场 |
speech_config.wakeup_mode | int | Yes | 唤醒模式,0-本地唤醒,1-云端唤醒,2-本地带唤醒词,3-不需要唤醒 |
speech_config.awake_words | string | No | 唤醒词 |
注意:
- 同一个语音请求的不同语音片段的公共参数中的
http.header.RequestID
需保持一致
# 请求示例
{
"speech_config": {}, // XWSpeechReqProcessConfig Json 对象
"speech": {} // XWSpeechReqSpeechInfo Json 对象
}
# silk压缩
我们的silk是silk v3,提供安卓的aar库和demo。
aar下载地址:https://xiaoweidevice-75050.gzc.vod.tencent-cloud.com/doc/xwsilksdk.aar
# 返回结果
# ASR识别结果
在发送语音请求过程中,服务端会使用1001002命令字推送ASR识别结果,接口返回参数遵循公共参数中的websocket响应格式,接口返回的content.response
内容为以下格式:
字段名 | 类型 | 描述 |
---|---|---|
session_ctrl.seq | int | 当前语音序列 |
orig_question_text | string | ASR识别结果 |
is_voice_start | bool | 当前session_ctrl.seq为语音开始标记 |
is_voice_end | bool | 当前session_ctrl.seq为语音结束标记,客户端收到此标记应终止此次收音 |
# 技能执行结果
接口返回参数遵循公共参数中的websocket响应格式
接口返回的content.response
内容遵循资源格式约束
# Demo
demo下载地址: https://xiaoweidevice-75050.gzc.vod.tencent-cloud.com/doc/xwopendemo.zip