cordova 如何在IONIC中使用连续声转文

pgpifvop  于 2022-11-15  发布在  Ionic
关注(0)|答案(2)|浏览(226)

我已经成功地在我的项目(IONIC3)中集成了Speech Recognition API。但是为了输入语音,我需要每次都调用这个。
有没有办法我可以连续运行这个作为一个服务器?这样在任何时候,如果有人说了什么,它会转换成文本。

pdkcd3nj

pdkcd3nj1#

我提出了我的解决方案,没有办法通过插件正式使用继续监听。但我们可以使用递归概念来实现这一点。

this.speechRecognition.startListening(option).subscribe((matches: Array<string>) => { 
    this.voiceArray = matches; 
    // Now we get what user said so we can call again for active start listening. 
    this.start();
  }, (onerror) => {
       console.log('Error::::', onerror);
       // Error occure when user does not say anything in that case we can call again.
       this.start();
   }

注意:把所有的监听代码放在start()函数里面并调用它。但是你必须不断地处理那个烦人的哔哔声。为此,你可以使用 cordova audioManagment插件(这将使用户设备静音,而不是一直这样)。

w1jd8yoj

w1jd8yoj2#

@Rajat.r2的解决方案并不完美,根据以下公式,它会消耗大量功率:apple doc on Speech Recognition (https://developer.apple.com/documentation/speech/sfspeechrecognizer)
我想最好的方法是使用唤醒词服务,如:https://picovoice.ai/docs/porcupine/,然后用原生语音识别来处理你剩下的东西。问题是这是一个付费服务。我会在我的一个应用程序上试试。

相关问题