【问题标题】:Web App with Microphone Input带有麦克风输入的 Web 应用程序
【发布时间】:2012-02-11 00:39:09
【问题描述】:

我正在开发一个 C++ 应用程序,它接受麦克风输入、处理它并播放一些音频。该处理将合并位于服务器上的数据库。为了便于创建 UI 并获得最大的可移植性,我认为用 HTML 完成前端会很好。本质上,我想在浏览器中录制音频,将该音频发送到服务器进行处理,然后从服务器接收音频,然后在浏览器中播放。

显然,如果 HTML5 支持麦克风输入会很好,但它不支持。因此,我需要创建某种插件来实现这一点。由于涉及的安全问题,NPAPI 让我感到害怕,所以我正在研究 PPAPI 和 Native Client。 Native Client 还不支持麦克风输入,我相信 PPAPI 音频输入 API 将仅限于 Chrome 的开发版本。 FireBreath 看起来也不支持任何麦克风功能。所以,我相信我的选择是:

  • 编写我自己的 NPAPI 插件来录制音频
  • 使用 Flash 获取麦克风输入
  • 完全放弃浏览器,只做一个原生应用程序

此项目的目标受众是幼儿和不熟悉计算机的人。我想让它尽可能便携且易于使用。有什么建议吗?

【问题讨论】:

标签: web microphone npapi browser-plugin ppapi


【解决方案1】:

如果您可以在 Flash 中完成所有操作并具备相关知识,那可能是最好的解决方案:
您可以避免编写特定于平台的代码,交付/更新很容易,而且 Flash 覆盖面广,因此用户无需安装任何自定义插件。

FireBreath 看起来也不支持任何麦克风功能。

您可以编写自己的(依赖于平台的)代码来使用 FireBreath 进行音频录制,就像在普通的 NPAPI 插件中一样。 FireBreath 只是让您更容易编写插件,结果仍然是一个可以访问原生 API 等的 NPAPI(和 ActiveX)插件。

【讨论】:

  • 借调;在每一点上。你永远不应该写一个更简单的插件;如果您可以使用通常已经存在的闪存来做到这一点,那么您的情况会好得多。如果你不能,FireBreath 是一个更简单的解决方案,但需要了解 C++ 中的平台 API。
  • 太好了,谢谢。不想从零开始写插件,但对学习Flash也有所保留。
【解决方案2】:

您可以在 HTML5 中使用捕获音频和视频功能,请参阅this link 了解更多信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-07
    • 2011-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-24
    • 1970-01-01
    相关资源
    最近更新 更多