SpeechRecognition.onresult

Experimental

これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

SpeechRecognitionインターフェイスの onresult プロパティは、音声認識サービスが結果を返した時に、つまり正しく言葉や文法が認識でき、アプリに通信した時 (resultイベントが発生した時) に、実行するイベントハンドラーになります。

構文

mySpeechRecognition.onresult = function() { ... };

下記のソースコードは Speech color changer の例文から取り出しました。

recognition.onresult = function(event) {
  // SpeechRecognitionEvent プロパティーは SpeechRecognitionResultList オブジェクトを返しました。
  // SpeechRecognitionResult オブジェクトは SpeechRecognitionResultList オブジェクトにあります。
  // ゲッターがあるので、配列のように呼び出すことができます。
  // 最初の[0]は 0 の位置にある SpeechRecognitionResult を返します。
  // それぞれの結果がある SpeechRecognitionAlternative オブジェクトは各位SpeechRecognitionResult オブジェクトにあります。
  // それもゲッターがあるので、配列のように呼び出すことができます。
  // 2つ目の[0]は 0 の位置にある SpeechRecognitionAlternative を返します。
  // SpeechRecognitionAlternative オブジェクトの transcript プロパティを返します。
  var color = event.results[0][0].transcript;
  diagnostic.textContent = '結果:' + color + '.';
  bg.style.backgroundColor = color;
}

仕様

仕様 状態 コメント
Web Speech API
onresult の定義
ドラフト

ブラウザー実装状況

BCD tables only load in the browser

Firefox OS の権限

アプリで音声認識を利用する前に、下記の権限を manifest に追加する必要があります。

"permissions": {
  "audio-capture" : {
    "description" : "Audio capture"
  },
  "speech-recognition" : {
    "description" : "Speech recognition"
  }
}

privileged アプリ権限も必要なので、下記も追加が必要です。

  "type": "privileged"

関連情報