1

Chrome 用の Google の Javascript SDK 音声認識 (webkitSpeechRecognition) を使用しており、recognitionプロセスを自動的にオンにしてから、ユーザーが次のイベントでアプリの送信フォームに言ったことを送信します。

            recognition.onend = function(){}

onend問題は到着までかなり時間がかかることです。

onspeechendorを使ってみたのですonsoundendが と同時に発火してしまいましたonend

その人が話し終わった直後、またはその後すぐに発火するものが必要です。

この JS SDK またはソリューションに欠けている設定を推奨できる人はいますか?

ありがとうございました!

4

1 に答える 1

3

ユーザーが話すのをやめたことをブラウザーが検出するまで待ちたくない場合は、バックグラウンド ノイズが原因で数秒かかる場合があります。部分的な (暫定的な) 結果を使用してみることができます。

var recognition = new webkitSpeechRecognition();
recognition.continuous = true;
recognition.interimResults = true;

recognition.onresult = function(event) {
    var 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;
      }
    }

     document.querySelector('input').value = interim_transcript;  
  };

document.querySelector('button').addEventListener('click', function(){
    recognition.start();  
});

http://jsfiddle.net/2o1xjtud/

これはhttps://github.com/GoogleChrome/webplatform-samples/blob/master/webspeechdemo/webspeechdemo.htmlからの抜粋です

于 2015-04-10T11:36:46.857 に答える