SpeechRecognition.onresult

これは実験的な機能です。本番で使用する前にブラウザー実装状況をチェックしてください。

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 の定義
ドラフト

ブラウザー実装状況

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
onresult
実験的
Chrome 完全対応 33
接頭辞付き 補足
完全対応 33
接頭辞付き 補足
接頭辞付き webkit のベンダー接頭辞が必要
補足 You'll need to serve your code through a web server for recognition to work.
Edge ? Firefox 未対応 なしIE 未対応 なしOpera 未対応 なしSafari 未対応 なしWebView Android 完全対応 あり
接頭辞付き 補足
完全対応 あり
接頭辞付き 補足
接頭辞付き webkit のベンダー接頭辞が必要
補足 You'll need to serve your code through a web server for recognition to work.
Chrome Android 完全対応 あり
接頭辞付き 補足
完全対応 あり
接頭辞付き 補足
接頭辞付き webkit のベンダー接頭辞が必要
補足 You'll need to serve your code through a web server for recognition to work.
Firefox Android 未対応 なしOpera Android 未対応 なしSafari iOS 未対応 なしSamsung Internet Android ?

凡例

完全対応  
完全対応
未対応  
未対応
実装状況不明  
実装状況不明
実験的。動作が変更される可能性があります。
実験的。動作が変更される可能性があります。
実装ノートを参照してください。
実装ノートを参照してください。
使用するには、ベンダー接頭辞または異なる名前が必要です。
使用するには、ベンダー接頭辞または異なる名前が必要です。

Firefox OS の権限

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

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

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

  "type": "privileged"

関連情報

ドキュメントのタグと貢献者

このページの貢献者: yamachu, mdnwebdocs-bot, Uemmra3, takaneichinose
最終更新者: yamachu,