これは実験段階の機能です。
この機能は複数のブラウザで開発中の状態にあります。各ブラウザで用いるために、適切なベンダー接頭辞が必要な場合があります。互換性テーブルをチェックしてください。また、実験段階の機能の構文と挙動は、仕様変更に伴い各ブラウザの将来のバージョンで変更になる可能性があることに注意してください。
SpeechRecognition() は SpeechRecognition
オブジェクトインスタンスを作成します。
構文
var myRecognition = new SpeechRecognition();
パラメータ
なし。
サンプル
このコードは、Speech color changer から引用しています。
var grammar = '#JSGF V1.0; grammar colors; public <color> = aqua | azure | beige | bisque | black | blue | brown | chocolate | coral | crimson | cyan | fuchsia | ghostwhite | gold | goldenrod | gray | green | indigo | ivory | khaki | lavender | lime | linen | magenta | maroon | moccasin | navy | olive | orange | orchid | peru | pink | plum | purple | red | salmon | sienna | silver | snow | tan | teal | thistle | tomato | turquoise | violet | white | yellow ;' var recognition = new SpeechRecognition(); var speechRecognitionList = new SpeechGrammarList(); speechRecognitionList.addFromString(grammar, 1); recognition.grammars = speechRecognitionList; //recognition.continuous = false; recognition.lang = 'en-US'; recognition.interimResults = false; recognition.maxAlternatives = 1; ...
仕様
仕様 | 策定状況 | コメント |
---|---|---|
Web Speech API SpeechRecognition の定義 |
ドラフト |
ブラウザ実装状況
機能 | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
基本サポート | 33 [1] | 44 (44) [2] | 未サポート | 未サポート | 未サポート |
機能 | Android | Chrome | Firefox Mobile (Gecko) | Firefox OS | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
基本サポート | ? | (有)[1] | ? | 2.5 | 未サポート | 未サポート | 未サポート |
- [1] 現在、Speech recognition インタフェースは、Chrome ではプレフィックスが必要です。そのため、、インタフェース名に適切なプレフィックス (例えば、
webkitSpeechRecognition
) が必要です。サーバ側のコードでもその必要があります。 - [2] 現在、デスクトップ版 Firefox で動作しません (まもなく対応予定です。) が、about:config で
media.webspeech.recognition.enable
のフラグを有効にすると使用できます。
Firefox OS permissions
speech recognition を使用するには、manifest に下記の permissions 設定が必要です:
"permissions": { "audio-capture" : { "description" : "Audio capture" }, "speech-recognition" : { "description" : "Speech recognition" } }
特権を持ったアプリの場合は下記も設定して下さい:
"type": "privileged"