Javascript Android Chrome上的WebKit语音识别
我使用的是一个简单的语音到文本检测和Javascript Android Chrome上的WebKit语音识别,javascript,android,google-chrome,webkitspeechrecognition,Javascript,Android,Google Chrome,Webkitspeechrecognition,我使用的是一个简单的语音到文本检测和webkitSpeechRecognition。 这段代码在Windows桌面上非常有效。 但是-在Android Chrome浏览器上-开始检测时,Android状态栏上的麦克风仅显示1或2秒。如果没有语音活动-将关闭并停止语音识别。如果我在单击“开始”后说得很快,它将保持打开状态。 有没有办法让Android麦克风随时可用 if ('webkitSpeechRecognition' in window) { var reco
webkitSpeechRecognition
。
这段代码在Windows桌面上非常有效。
但是-在Android Chrome浏览器上-开始检测时,Android状态栏上的麦克风仅显示1或2秒。如果没有语音活动-将关闭并停止语音识别。如果我在单击“开始”后说得很快,它将保持打开状态。
有没有办法让Android麦克风随时可用
if ('webkitSpeechRecognition' in window) {
var recognition = new webkitSpeechRecognition();
recognition.continuous = true;
recognition.interimResults = true;
recognition.onstart = function () {
$("#status").html("Status: Recording...");
recognizing = true;
};
recognition.onerror = function (event) {
alert(event.error);
};
recognition.onend = function() {
recognizing = false;
};
recognition.onresult = function(event) {
var interim_transcript = '';
for (var i = event.resultIndex; i < event.results.length; ++i) {
if (event.results[i].isFinal) {
final_transcript += event.results[i][0].transcript;
} else {
interim_transcript += event.results[i][0].transcript;
}
}
final_transcript = capitalize(final_transcript);
$("#final_span").html(linebreak(final_transcript));
$("#interim_span").html(linebreak(interim_transcript));
};
}
if('webkitSpeechRecognition'在窗口中){
var recognition=new-webkitSpeechRecognition();
识别。连续=正确;
recognition.interimResults=true;
recognition.onstart=函数(){
$(“#状态”).html(“状态:录制…”);
识别=正确;
};
recognition.onerror=功能(事件){
警报(事件.错误);
};
recognition.onend=函数(){
识别=错误;
};
recognition.onresult=函数(事件){
var临时_转录本=“”;
对于(var i=event.resultIndex;i
我自己也在寻找解决方案,因为我正在尝试与WebVR建立免提交互 至少只发出一次嘟嘟声,但经过一点测试后,我注意到,每次单击/点击时,识别的“嘟嘟声”都会再次触发 一个老资源给了我很大的希望,annyang()可能会起作用: 但在这里,我想它也只是在打电话
recognition.onend = function() {
console.info("voice recognition ended, restarting...");
recognition.start();
}
在recognition.oned回调中。所以在安卓chrome上,你可能每隔一秒钟就会听到识别蜂鸣声
最后,MDN并没有真正说明是否可以在android chrome()上进行连续识别,但我看到的每个示例都没有在android上提供连续模式(至少在CyanogenMod棒棒糖上)
//编辑如果您查看了,它们会以某种方式获得连续识别,但我在它们的源代码中找不到任何内容…请尝试设置:
recognition.continuous = false
不保证,但这对我在Galaxy S7上运行Chrome很有效