使用phonegap进行连续语音识别

时间:2014-02-17 10:28:42

标签: android ios cordova phonegap-plugins speech-recognition

我想在Android和IOS中通过连续语音识别在phonegap中创建应用。我的应用程序应该等待用户语音,当他/她说“下一步”时,应用程序应该更新屏幕并执行一些操作。

我找到了这个插件:https://github.com/macdonst/SpeechRecognitionPlugin并且它的工作速度非常快。但是在语音识别开始并且没有语音几秒钟后,语音识别器停止。是否有像isSpeechRecognizerAlive或任何其他解决方案的任何方法或标志?或者可以将其作为服务运行吗?

我也想知道IOS上有类似的插件以及如何管理它:)

1 个答案:

答案 0 :(得分:1)

此插件基于此处的Web Speech API(https://developer.apple.com/videos/wwdc/2015/?id=703) 实施例3&您使用

解决了4个地址
  

recognition.continuous = true

<textarea id="textarea" rows=10 cols=80></textarea>
  <button id="button" onclick="toggleStartStop()"></button>

  <script type="text/javascript">
    var recognizing;
    var recognition = new SpeechRecognition();
    recognition.continuous = true;
    reset();
    recognition.onend = reset;

    recognition.onresult = function (event) {
      for (var i = resultIndex; i < event.results.length; ++i) {
        if (event.results.final) {
          textarea.value += event.results[i][0].transcript;
        }
      }
    }

    function reset() {
      recognizing = false;
      button.innerHTML = "Click to Speak";
    }

    function toggleStartStop() {
      if (recognizing) {
        recognition.stop();
        reset();
      } else {
        recognition.start();
        recognizing = true;
        button.innerHTML = "Click to Stop";
      }
    }
  </script>

此外还有另一个插件可以在此处进行连续语音识别

  

https://dvcs.w3.org/hg/speech-api/raw-file/tip/speechapi.html#examples

但是有些问题尚未解决。虽然效果很好(在Lollipop 5.1上测试)