我正在尝试使用节点webkit语音识别API,但它给了我一个奇怪的行为。我像那样初始化录音机:
var rec = new webkitSpeechRecognition();
rec.continuous = true;
rec.interimResults = true;
rec.onresult = function(e){ alert('result') };
rec.onstart = function(e){ alert('start') };
rec.onerror = function(e){ console.log(e); };
rec.onend = function(e){ alert('end') };
rec.onspeechstart = function(e){ alert('speechStart') };
rec.start();
但start()
致电后没有任何事情发生。有效的唯一插槽是end()
,我无法弄清楚这个是否有效,而不是其他的......我失去了什么?
我浏览了这个Github issue (webkitSpeechRecognition for desktop apps?),但没有找到任何有用的信息。
答案 0 :(得分:4)
webkitSpeechRecognition需要一个后端语音识别系统。
Chrome可能会使用Google的语音识别系统。因此,我们可以毫不费力地在Chrome上使用webkitSpeechRecognition。但是对于其他人,即使它是基于webkit,它可能无法正常工作。
我认为在支持Google或某人的引擎之前,很难在node-webkit上使用语音识别功能。
还有CHANGELOG 0.8.0 / 10-30-2013说
- 在支持之前取消定义window.webkitSpeechRecognition