持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第14天,点击查看活动详情
当我们要上传录音时要注意先设置好录音格式
-
prompt 声音内容wav文件(只支持8000hz,16位,单声道)或者文本。prompt 提示文本(如果最后4个字是.wav,就是录音文件放音,否则会调用TTS生成声音文件)。同样的文字TTS只转换一次,后续会使用缓存的文件
-
wait 单位毫秒,放音结束后等待时间。用于等待用户说话。
-
retry 重播次数。就是wait时间内用户不说话,就重新播放声音。
-
block_asr 本次放音是否暂停ASR,(也就是关闭打断,同时不识别用户说话)
- -1 放音的时候不识别,进入等待的时候开启识别,比如 playback(file=”1.wav”,wait=5000) 就是播放1.wav的时候不识别,进入等待(5000毫秒)的时候开始识别用户说话。
- 0 禁用这个参数,不改变ASR状态。
- 大于0 单位毫秒,放音前面多少秒不识别。 playback(file=”1.wav”,wait=5000,block_asr=3000) 假如1.wav长度10秒,就是1.wav播放3秒后启动识别,前3秒忽略用户说话。
-
tts_configure_filename tts配置文件名(绝对路径),不设置会使用默认smartivr.json.
-
allow_interrupt 本次放音是否允许自动打断,0使用start_asr的pause_play_ms参数,,-1禁用自动打断(忽略start_asr->pause_play_ms参数),大于0就是覆盖start_asr->pause_play_ms参数设置。 默认自动打断时间是 start_asr->pause_play_ms参数指定的。注意:这个只是动态修改pause_play_ms的参数,对于业务控制的打断(暂停放音)没作用。
多文件或者TTS和录音文件混合放音
prompt 使用数组方式就可以,比如
[ "/var/wav/1.wav", "tts文字转声音", "/var/var/2.wav"]
sotp_asr
:{"action":"stop_asr","flowdata":"\u8bed\u97f3\u8bc6\u522b"}
停止后台ASR。
console_playback
用于播放控制,用户说话开始,先暂停播放,如果说的是无效声音,可以恢复播放。
-
command
- pause 暂停播放
- resume 恢复播放
- stop 停止播放