私はWeb Speech APIを使用して自分のウェブページで音声コマンドをキャプチャしていますが、一定時間後に認識機能は終了します(リスニングを停止し、onendイベントを発生させます)。ChromeのwebkitSpeechRecognitionがランダムに終了します
どうしてですか?それを防ぐことはできますか?
音声認識ページ(40行)を使用してエラーを再現するために必要なコードはすべてここにあります。認識装置がリッスンを停止すると、「終了」を警告します。
<h1>Voice Recognizer</h1>
<script>
if (!('webkitSpeechRecognition' in window)) {
alert('Your browser does not support speech recognition.');
} else {
var recognition = new webkitSpeechRecognition();
recognition.continuous = true;
recognition.interimResults = true;
recognition.onstart = function() {
console.log('started');
}
recognition.onresult = function() {
interim_transcript = '';
for (var i = event.resultIndex; i < event.results.length; ++i) {
if (event.results[i].isFinal) {
final_transcript += event.results[i][0].transcript;
} else {
interim_transcript += event.results[i][0].transcript;
}
}
console.log('interim result:', interim_transcript);
console.log('final reuslt:', final_transcript);
}
recognition.onerror = function() { alert('error'); }
recognition.onend = function() { alert('end'); }
function startListening(e){
final_transcript = '';
recognition.start();
}
startListening();
}
</script>