首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓Chrome上的webkitSpeechRecognition

安卓Chrome上的webkitSpeechRecognition
EN

Stack Overflow用户
提问于 2017-02-09 11:00:42
回答 2查看 6.6K关注 0票数 15

我使用一个简单的语音来使用webkitSpeechRecognition来检测文本。这段代码在上工作得很好。但是-在Android Chrome浏览器上,当启动检测时,安卓状态栏上的麦克风只显示1到2秒。如果没有语音活动-,则关闭并停止语音识别。如果我在点击“开始”后说得很快,它就会继续。有什么想法,如何使Android麦克风在任何时候可用?

代码语言:javascript
复制
     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));

          };

      }

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-14 15:59:12

当我试图与WebVR建立一个不需要人手的交互时,我自己就在寻找解决方案。

https://codepen.io/bryik/pen/mErOOR?editors=0010至少只发出一次嘟嘟声,但经过一些测试后,我注意到,每次点击/点击都会触发识别的“嘟嘟”。

一个较老的资源给了我很好的希望,安阳(https://github.com/TalAter/annyang)可能会起作用:

https://github.com/cvan/webvr-holodeck/issues/22,但在这里我想它也只是打电话

代码语言:javascript
复制
recognition.onend = function() {
    console.info("voice recognition ended, restarting...");
    recognition.start();
}

在recognition.onend回调中。所以在安卓铬上你可能每隔一秒就会听到一声识别声.

最后,MDN并没有真正说明是否有可能在android chrome (https://developer.mozilla.org/en-US/docs/Web/API/SpeechRecognition)上持续识别,但我看到的每个例子都没有在android上提供连续模式(至少在CyanogenMod Lollipop上是这样)。

//编辑--如果你看一下https://www.microsoft.com/cognitive-services/en-us/speech-api,它们就能得到持续的识别,但我在它们的源代码中找不到任何东西.

票数 5
EN

Stack Overflow用户

发布于 2021-01-07 22:01:33

试着设置:

代码语言:javascript
复制
recognition.continuous = false

不能保证,但这对我在GalaxyS7上运行Chrome很有效

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42134899

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档