SpeechGrammar - 表示希望识别服务识别的一组单词或单词模式
这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。
SpeechGrammar
是 Web Speech API 的接口,表示希望识别服务识别的一组单词或单词模式。
语法是使用 JSpeech 语法格式(JSGF)定义的。将来也可能支持其他格式。
构造函数
SpeechGrammar.SpeechGrammar()
创建一个新的 SpeechGrammar
对象。
属性
SpeechGrammar.src
从 SpeechGrammar
对象实例中设置并返回一个包含语法的字符串。
SpeechGrammar.weight
可选
设置并返回 SpeechGrammar
对象的权重。
实例
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;
console.log(speechRecognitionList[0].src); // 应该返回与语法变量相同的内容
console.log(speechRecognitionList[0].weight); // 应该返回 1 - 与第 4 行中设置的权重相同。
规范
规范 | 状态 | 备注 |
---|---|---|
Web Speech API SpeechGrammar 的定义 |
草稿 | - |
桌面浏览器兼容性
特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
基础支持 | 25 webkit | 不支持 | 441 | 不支持 | 27 | 不支持 |
SpeechGrammar() 构造函数 | 25 webkit | 不支持 | 441 | 不支持 | 27 | 不支持 |
src | 25 | 不支持 | 441 | 不支持 | 27 | 不支持 |
weight | 25 | 不支持 | 441 | 不支持 | 27 | 不支持 |
移动浏览器兼容性
特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
基础支持 | 不支持 | 64 webkit | 未知 | 不支持 | 未知 | 不支持 | 不支持 |
SpeechGrammar() 构造函数 | 不支持 | 64 webkit | 未知 | 不支持 | 未知 | 不支持 | 不支持 |
src | 不支持 | 64 | 未知 | 不支持 | 未知 | 不支持 | 不支持 |
weight | 不支持 | 64 | 未知 | 不支持 | 未知 | 不支持 | 不支持 |
1. 请注意,当前在 Firefox 桌面中只有语音合成部分可用 - 一旦整理出所需的内部权限,语音识别部分将很快可用。