如何在annyang语音API中捕获除命令以外的语音 [英] How to capture speech except command in annyang speech api

查看:97
本文介绍了如何在annyang语音API中捕获除命令以外的语音的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我能够根据annyang语音api中提供的命令执行操作. 但是我的问题是如何使用此api捕获除命令以外的语音.

我需要与Google语音 https:相同的行为://www.google.com/intl/zh-CN/chrome/demos/speech.html

解决方案

我们可以通过使用annyang.getSpeechRecognizer()获取识别对象来捕获语音而不是命令.

请找到演示代码:-

<!DOCTYPE html>
<html>
  <head>
  <script src='//cdnjs.cloudflare.com/ajax/libs/annyang/2.6.0/annyang.min.js'></script>
<script>
  annyang.start();
  var recognition = annyang.getSpeechRecognizer();
  var final_transcript = '';
  recognition.interimResults = true;
    recognition.onresult = function(event) {
    var interim_transcript = '';
    final_transcript = '';
    for (var i = event.resultIndex; i < event.results.length; ++i) {
        if (event.results[i].isFinal) {
            final_transcript += event.results[i][0].transcript;
            console.log("final_transcript="+final_transcript);
            annyang.trigger(final_transcript); //If the sentence is "final" for the Web Speech API, we can try to trigger the sentence
        } else {
            interim_transcript += event.results[i][0].transcript;
            console.log("interim_transcript="+interim_transcript);
        }
    }

    document.getElementById('123').innerHTML =  'interim='+interim_transcript+'<br/>final='+final_transcript;
    console.log('interim='+interim_transcript+'|final='+final_transcript);
  };
</script>
</head>
<body>
<br/><br/>
 Annyang! Speech Test<br/><br/>
<div id='123'>
No results yet
 </div>
</body>

I am able to perform action according to commands provided in annyang speech api. But my question is how to capture speech except commands using this api.

I need the same behavior that we got from google speech https://www.google.com/intl/en/chrome/demos/speech.html

解决方案

We can capture the speech instead of command by getting the recognition object by using annyang.getSpeechRecognizer()

Please find the demo code :-

<!DOCTYPE html>
<html>
  <head>
  <script src='//cdnjs.cloudflare.com/ajax/libs/annyang/2.6.0/annyang.min.js'></script>
<script>
  annyang.start();
  var recognition = annyang.getSpeechRecognizer();
  var final_transcript = '';
  recognition.interimResults = true;
    recognition.onresult = function(event) {
    var interim_transcript = '';
    final_transcript = '';
    for (var i = event.resultIndex; i < event.results.length; ++i) {
        if (event.results[i].isFinal) {
            final_transcript += event.results[i][0].transcript;
            console.log("final_transcript="+final_transcript);
            annyang.trigger(final_transcript); //If the sentence is "final" for the Web Speech API, we can try to trigger the sentence
        } else {
            interim_transcript += event.results[i][0].transcript;
            console.log("interim_transcript="+interim_transcript);
        }
    }

    document.getElementById('123').innerHTML =  'interim='+interim_transcript+'<br/>final='+final_transcript;
    console.log('interim='+interim_transcript+'|final='+final_transcript);
  };
</script>
</head>
<body>
<br/><br/>
 Annyang! Speech Test<br/><br/>
<div id='123'>
No results yet
 </div>
</body>

这篇关于如何在annyang语音API中捕获除命令以外的语音的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆