【发布时间】:2014-04-04 11:01:39
【问题描述】:
我正在尝试使用 HTML5 Web Speech API 的语音识别。
我无法弄清楚为什么这段代码不起作用。它正在触发请求访问麦克风的权限,但是当我说话时,没有任何内容被转录。
当我查看控制台时,没有错误,但是触发了语音识别停止时发生的console.log。
我认为它过早地停止了。
有谁知道发生了什么以及为什么它不起作用?
这里是 JS:
依赖于 jsfiddle 中包含的 webspeech.js。
这里是 JS 小提琴:http://jsfiddle.net/2sMXZ/3/
下面是实现代码:
var reco = new WebSpeechRecognition;
$('#mic').click(function(){
$(this).toggleClass('red');
reco.toggleStartStop();
});
var interim_transcript = '';
reco.recognition.onresult = function(event){
for(var i = event.resultIndex; i<event.results.length; ++i){
if(event.results[i].isFinal) reco.stop();
else interim_transcript += event.results[i][0].transcript;
}
}
$('#interim_span').html(interim_transcript);
console.log(interim_transcript);
reco.recognition.onend = function(e){
//$('#mic').removeClass('red');
console.log('done');
}
【问题讨论】:
标签: javascript html speech-recognition speech-to-text