如何在我的页面上自动启动谷歌语音识别?

Sha*_*mer 4 javascript html5 webkit speech-to-text google-chrome-extension

我写了一个只包含以下内容的HTML5网页:

<input type="text" style="font-size: 40px;"  name="speech" size="50"  x-webkit-speech/> 
Run Code Online (Sandbox Code Playgroud)

我想要做的是让我在进入页面后立即自动启动x-webkit-speech,并不断将语音识别结果输出到文本中.我该怎么办?我已经看过各种与之相关的javascripts,我测试了很多,但它们对我不起作用.

感谢任何回答的人!;)

ant*_*rat 5

您可以尝试使用Web Speech API,例如:

if ('webkitSpeechRecognition' in window) {
  var recognition = new webkitSpeechRecognition();
  var final_transcript = '';
  recognition.continuous = true;
  recognition.interimResults = true;

  recognition.onresult = function( event ) {
    var final_transcript = '';
    for (var i = event.resultIndex; i < event.results.length; ++i) {
      if (event.results[i].isFinal) {
        final_transcript += event.results[i][0].transcript;
      } 
    }
    document.getElementById( 'speech' ).value = final_transcript;
  };
  recognition.start();
}
Run Code Online (Sandbox Code Playgroud)

唯一的一件事是你需要允许页面在页面加载时使用麦克风

jsFiddle演示

  • 也许这是因为您从HTML文件而不是从服务器运行脚本.尝试设置一些localhost服务器或将您的页面上传到主机. (2认同)