通过网络浏览器从客户端麦克风获取流?

时间:2010-08-04 07:43:36

标签: language-agnostic

我想实现类似voip通信的东西,客户端不需要安装额外的应用程序,他们只需打开网页并与服务器通信。无论如何通过网络浏览器从客户端麦克风访问音频流?我不想要用户必须安装的applet这样的额外插件。

我认为闪存可以做到这一点,但是还有吗?

谢谢你, Voteforpedro

4 个答案:

答案 0 :(得分:1)

您的四个主要选项是:

  • 闪存
  • Silverlight的
  • 的ActiveX
  • 不安全的浏览器设置(例如,javascript调用EXE)

以上所有内容都受到各种安全限制或需要最终用户的一些接受。我甚至不确定浏览器呼叫EXE甚至是可能的,所以应该不惜一切代价避免它。

安装ActiveX控件会限制您在Windows上使用IE,因此应该避免使用。用户必须同意安装ActiveX。

Flash和Silverlight都是跨平台的(Flash比Silverlight更多),但也要求用户同意访问Microphone / Webcam - 这是由框架完成的,而不是你可以控制/影响的东西。显然,如果用户没有安装Flash或Silverlight,您需要提示用户他们需要安装它!

如@Oded所述,麦克风和网络摄像头存在严重的安全和隐私问题,因此不要指望未来的浏览器能让您更轻松(例如新的HTML5浏览器系列)。

答案 1 :(得分:0)

没有标准可以让您访问客户端机器麦克风。

我可以想象给浏览器这样的访问有安全隐患,所以不要指望很快看到任何东西,不能没有某种插件。

答案 2 :(得分:0)

没有标准,我认为闪光灯是你最好的选择。

AS 3.0 Accessing a microphone

答案 3 :(得分:-1)

Chrome 11+支持访问麦克风。访问this页面(使用Google Chrome),然后点击“语音”并尝试一下。这是使用Sencha Ext / Touch这是一个开放的库。 Sencha Touch的这个特定插件也是开源的并且已发布here

编辑:为了澄清,这只是JavaScript。用户无需批准任何内容。但是,它仅适用于Chrome,并且使用Google语音识别。

祝你好运!