在HTML5中自动启动语音到文本

时间:2012-04-26 15:44:56

标签: javascript html5 webkit speech-to-text

我正在尝试启动语音输入会话而不点击麦克风图标。 就像窗口加载或文档加载事件一样 - 而不是默认的单击事件。

  

<input type="text" id="autoStart" x-webkit-speech />

我使用谷歌浏览器,因为它支持大多数HTML 5功能。

2 个答案:

答案 0 :(得分:0)

此链接应该有所帮助。你可以用这种方式从javascript执行它。 "Voice-Driven-Web-Apps-Introduction-to-the-Web-Speech-API"

答案 1 :(得分:0)

在页面加载时执行此代码,您将看到一个权限对话框,要求您授予麦克风访问权限。点击允许,语音识别将开始。检查语音识别API docs以查找可绑定的事件。

var interim_result, final_result;
var recognition_engine = new webkitSpeechRecognition();

recognition_engine.continuous = true;
recognition_engine.interimResults = true;
recognition_engine.lang = 'en-US';
recognition_engine.onresult = function(function(e) {

  var result, i;

  interim_result = '';
  if (typeof e.results === 'undefined') {

    recognition_engine.stop();
    console.log('SPEECH RECOGNITION : stopping due to empty result.', e);
    return;
  }
  for (i = event.resultIndex; i < event.results.length; ++i) {
    result = event.results[i];
    if (result.isFinal) {
      final_result = result[0].transcript;
      console.log('SPEECH RECOGNITION : final transcript = ' + final_result, e);
      // trigger a command matching the final utterance here
    } else {
      interim_result += result[0].transcript;
    }
  }
  console.log('SPEECH RECOGNITION : interim result = ' + interim_result);
};
recognition_engine.start();