外观
语音输入功能
大屏端具备完整的语音输入(ASR)能力,涵盖麦克风录音、识别结果回填与错误处理。文本转语音(TTS)、播报控制与朗读文本清洗等内容,详见:文本转语音tts。
一、语音输入(ASR)
仅支持 HTTPS 或 localhost
语音输入依赖浏览器 getUserMedia API,该接口仅在安全上下文(Secure Context)中可用:
- ✅
https://访问的页面; - ✅
http://localhost或http://127.0.0.1本地调试; - ❌ 非 localhost 的
http://(如http://192.168.x.x这类内网 IP)会被浏览器禁用麦克风,导致无法录音。
若以 HTTP 形式访问非本地地址,请配置 SSL 证书改为 HTTPS,或改用文字输入。
大屏端(VaGlowInput.vue 麦克风按钮):
- 点击开始录音(
MediaRecorder),再次点击结束;录音中按钮红色呼吸光效。 - 结束后
Blob(audio/webm)以multipart/form-data上传file+format=webm到/digital-human/asr/recognize。 - 识别结果追加到输入框(已有内容以空格衔接),需用户确认后再发送。
- 单次最长 60 秒,到点自动停止并识别;组件卸载时释放麦克风。
- 错误提示
explainVoiceError覆盖:非 HTTPS 安全上下文(HTTP 页面被浏览器禁用麦克风,给出改成 https / 用 localhost / 部署 SSL 的具体建议)、不支持getUserMedia、权限被拒、无设备、设备被占用、启动失败等六类场景。
移动端的「按住说话」语音输入见 移动端与大屏交互。
二、文本转语音(TTS)与播报
本菜单聚焦语音输入(ASR)。文本转语音(TTS)、语音播报控制、TTS 文本清洗与分段等内容,请移步【文本转语音tts】菜单查看:文本转语音tts。