跨浏览器语音识别

Posted

技术标签:

【中文标题】跨浏览器语音识别【英文标题】:Cross Browser Speech Recognition 【发布时间】:2014-11-05 12:12:58 【问题描述】:

我目前正在处理 ASP.NET 中的一个项目。我需要添加适用于 IE/Chrome/Firefox 的语音命令。我搜索了很多,但没有找到任何跨浏览器的解决方案。

是否有任何 javascript 框架可以做到这一点? 我可以将 Google 网络语音 API 用作服务吗?

任何建议都会有所帮助。

【问题讨论】:

我最终创建了一个桌面服务,它使用 Microsoft 语音 API 来获取输入并转换为文本,然后通过 Web 套接字与浏览器进行通信。 【参考方案1】:

您可以在Can I Use 上查看各种浏览器对语音识别的支持。目前只有 Chrome 可靠地支持语音识别。其他的则没有,包括 IE、Firefox 和 Safari。 Firefox 正在开发语音识别支持,但还没有。

如果您的浏览器支持getUserMedia录制音频,您可以录制音频并将其发送到服务器进行识别。如果你想识别几个简单的命令,你也可以使用 javascript-only 识别器Pocketsphinx.js。

在不支持 getUserMedia API 的浏览器上,您可以使用 Flash 对象或 Java 小程序来捕获音频。如果您优先考虑 IE,这几乎是您唯一的选择。

【讨论】:

我已经考虑过 Pocketsphinx.js。但我的客户在 IE 中给予更高的优先级。【参考方案2】:

只要浏览器支持html5的getUserMedia API即可:

    使用 HTML5 的 getUserMedia 捕获音频流 将其保存为 .WAV,有相应的库 通过 AJAX 将 .WAV 发送到服务器 通过 SetInputToWaveFile 方法将 .WAV 输入到 SpeechRecognitionEngine 获取结果并在 AJAX 调用中返回

一个例子:

http://weblogs.asp.net/ricardoperes/speech-recognition-in-asp-net

【讨论】:

以上是关于跨浏览器语音识别的主要内容,如果未能解决你的问题,请参考以下文章

百度浏览器语音识别,无效怎么回事

浏览器中的语音识别功能

我给浏览器加了个语音搜索功能

如何实现HTML5语音识别功能

人工智能 - 基于火狐浏览器的语音识别,语音自动回复

文本到语音(语音生成)和语音到文本(语音识别)API?