我们在Chrome中使用的是webkitSpeechRecognition应用程序接口。由于这是一个原型应用程序,我们很高兴只支持Chrome,所以我们通过执行window.hasOwnProperty('webkitSpeechRecognition')检查(作为suggested by Google)来检测对该应用程序接口的支持。令人高兴的是,这在Firefox中失败了,但新的Opera (基于webkit)报告说它确实有这个属性。实际上,所有代码都按预期运行,除了...任何事件都不会被触发,也不会有声音被记录下来。
所以,我的问题是:我能让它以某种方式工作吗?是否需要一些特殊的权限或设置?
或者,有没有一种方法(除了好的老浏览器嗅探之外)来检测对webkitSpeechRecognition的正确的、有效的支持?
发布于 2016-12-14 23:46:09
现在只有google chrome有流式语音识别的API (他们有google sppeech API)。
如果你要在Opera上使用https://www.google.com/intl/en/chrome/demos/speech.html,它会告诉你你需要Chrome25+来做这件事。
根据http://caniuse.com/#feat=speech-recognition的说法,Opera webkit已经支持这一功能,但目前还不能工作。Opera没有任何API服务可以即时转换它。现在他们的浏览器中只有占位符功能,也许将来他们会做到这一点,对吧,它不起作用。
*已编辑*
谷歌的例子,如何确定它是否工作。
// checking by google
if (!('webkitSpeechRecognition' in window)) {
console.log('GOOGLE: not working on this browser');
} else {
console.log('GOOGLE: working');
}
//your way
if (window.hasOwnProperty('webkitSpeechRecognition')) {
console.log('YOUR: working');
} else {
console.log('YOUR: not working on this browser');
}
发布于 2018-03-24 19:30:40
下面的Google示例使用时间戳来检测Opera没有触发start事件:https://www.google.com/intl/en/chrome/demos/speech.html
https://stackoverflow.com/questions/36741560
复制相似问题