0

私はwebkitSpeechRecognitionを使用するJavaScriptアプリケーションを開発しています。私のコードでは何が必要なのですか?私はinterimResultをtrueに設定しています。そのため、アプリケーションが話し言葉に一致するものを見つけたときにユーザーが見ることができますが、自分自身が最終結果を何か他のものに使用したいのです。私が持っているwebkitSpeechRecognitionで暫定的なトランスクリプトと最終的なトランスクリプトを取得する方法

<script type="text/javascript"> 

var r = document.getElementById('result'); 
var btn = document.getElementById('btn'); 

btn.addEventListener('click', startConverting); 

function startConverting() { 
if ('webkitSpeechRecognition' in window) { 
var speechRecognizer = new webkitSpeechRecognition(); 
speechRecognizer.continuous = true; 
speechRecognizer.interimResults = true; 
speechRecognizer.lang = "en-GB"; 
speechRecognizer.start(); 

var finalTranscripts = ''; 

speechRecognizer.onresult = function(event) { 
    if (event.results.length) { 
    r.innerHTML = event.results[0][0].transcript; 

    var question = event.results[0][0].transcript; 
    } 
}; 

speechRecognizer.onerror = function(event) { 

}; 
} else { 
r.innerHTML = 'Your browser is not supported.If Google chrome,please upgrade!'; 
} 
} 

:だけwork.Hereへの一つの機能は、私のアルゴリズムであり、私はこれを行うには、いくつかの方法を試してみましたが、それはボタンがクリックされたときに、2つの関数を呼び出すなど、動作しませんでしたが、これは作りますボタンがクリックされたときに2つの異なる関数を呼び出す部分は含まれていませんが、これはinterimResultsで変換するための元のコードです。 助けていただければ幸いです。あなたは中間・最終転写産物分離することはisfinalプロパティを使用することができます おかげ

答えて

0

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; 
    } 
} 

は詳細についてはdocsを参照してください。

+0

私はこれまでに質問を投稿する前にそのことを試しましたが、うまくいかなかったし、Googleの開発者サイトに続いてもう一度チェックしてみることもできます。 – Frank

関連する問題