This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The SpeechRecognitionResult interface of the Web Speech API represents a single recognition match, which may contain multiple SpeechRecognitionAlternative objects.
SpeechRecognitionResult.isFinal Read only
Boolean that states whether this result is final (true) or not (false) — if so, then this is the final time this result will be returned; if not, then this result is an interim result, and may be updated later on.SpeechRecognitionResult.length Read only
SpeechRecognitionAlternative objects contained in the result (also referred to as "n-best alternatives".)SpeechRecognitionResult.itemSpeechRecognitionAlternative objects within the result to be accessed via array syntax.This code is excerpted from our Speech color changer example.
recognition.onresult = function(event) {
// The SpeechRecognitionEvent results property returns a SpeechRecognitionResultList object
// The SpeechRecognitionResultList object contains SpeechRecognitionResult objects.
// It has a getter so it can be accessed like an array
// The first [0] returns the SpeechRecognitionResult at position 0.
// Each SpeechRecognitionResult object contains SpeechRecognitionAlternative objects that contain individual results.
// These also have getters so they can be accessed like arrays.
// The second [0] returns the SpeechRecognitionAlternative at position 0.
// We then return the transcript property of the SpeechRecognitionAlternative object
var color = event.results[0][0].transcript;
diagnostic.textContent = 'Result received: ' + color + '.';
bg.style.backgroundColor = color;
} | Specification | Status | Comment |
|---|---|---|
| Web Speech API The definition of 'SpeechRecognitionResult' in that specification. | Draft |
| Desktop | ||||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
| Basic support | 33
|
? | No | No | No | No |
isFinal
|
33
|
? | No | No | No | No |
length
|
33
|
? | No | No | No | No |
item
|
33
|
? | No | No | No | No |
| Mobile | |||||||
|---|---|---|---|---|---|---|---|
| Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
| Basic support | Yes
|
Yes
|
? | No | No | No | ? |
isFinal
|
Yes
|
Yes
|
? | No | No | No | ? |
length
|
Yes
|
Yes
|
? | No | No | No | ? |
item
|
Yes
|
Yes
|
? | No | No | No | ? |
To use speech recognition in an app, you need to specify the following permissions in your manifest:
"permissions": {
"audio-capture" : {
"description" : "Audio capture"
},
"speech-recognition" : {
"description" : "Speech recognition"
}
} You also need a privileged app, so you need to include this as well:
"type": "privileged"
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/SpeechRecognitionResult