ios safari浏览器上的Web语音识别结果不佳

8yparm6h  于 2023-01-10  发布在  iOS
关注(0)|答案(1)|浏览(441)

问候语,
我目前正在尝试在我的应用程序上实现语音识别功能。根据JS文档here,从Safari 14.1开始支持语音到文本。此外,我使用以下配置:

const { webkitSpeechRecognition } = (window as any)
    const recognition = new webkitSpeechRecognition();
    recognition.lang = 'pt-BR';
    recognition.continuous = true;
    recognition.interimResults = false;
    recognition.maxAlternatives = 1;
    // Avoid garbage collection bugs
    this.garbage.push(recognition);
    recognition.start();

在Chrome浏览器上,它工作正常,但在Safari浏览器上,识别结果却非常糟糕。它有时能理解我的话,但经常会曲解我的话,给我错误的结果。例如,如果我说:"你好助手,更改对比度",结果可能是这样的:"你好协助收费合同你好协助收费收费"之类的。
这个问题的一个特点是,safari上语音识别接口触发的事件只是startaudiostart
有人面临类似的问题或找到了解决这个问题的方法吗?我也接受在我的应用程序上实现语音识别的替代方案。
先谢了!

编辑

在我这边,你可以通过访问任何依赖于Web Speech API的网站看到这个问题。
https://www.google.com/chrome/demos/speech.html
https://www.audero.it/demo/web-speech-api-demo.html

mhd8tkvw

mhd8tkvw1#

所以,如果还有人在这个问题上犯了错,我已经在 chrome 论坛上填补了一个问题。你可以咨询问题here
基本上,Chrome团队在iOS设备上的浏览器中集成此功能时遇到了一些问题。
在我的例子中,我所做的是使用Hark.js来获取基于用户开始和停止说话的时间的事件,并在后端与Vosk配对来进行离线语音到文本的翻译。
IMO如果你想让你的应用程序在特定的浏览器上运行,浏览器语音识别API是可以的。但是,如果你想针对不同操作系统的所有浏览器,我建议你寻找不同的解决方案。

相关问题