我在 Chromium(Web Speech API的接口)下使用SpeechRecognition ,并有一个用于识别的语法集,在JSGF中定义:
"#JSGF V1.0 UTF-8; grammar animal_list; public <animal> = dog | cat | horse ;"
它已成功添加到识别中,所以我会在我说话时只返回三个单词(狗、猫或马)中的一个,但它会继续识别我说的任何内容。
一开始我以为问题出在我的代码上,但后来我发现 Mozilla 做了一个现场演示,说明了 API 的这个用例:你说点什么,如果它是语法中定义的颜色之一,API 会识别它。我认为这就是它应该如何工作的。
但是请查看页面底部的诊断消息:无论您告诉它什么,它都能识别。不仅仅是语法中定义的那些颜色。好像语法根本不存在。
你认为,我应该将其报告为 Chrome/Chromium 的错误吗?如果是,在哪里?还是我误解了它的工作原理?