两浏览器之间音视频直播,使用哪些技术?

11 投票
3 回答
2072 浏览
提问于 2025-04-17 08:21

我正在寻找一些最好的开源技术,用于在两个浏览器之间实现双向音视频通信。
目前我发现了以下一些方向:

  • WebRTC 是W3C的标准,还有一个爱立信的实现
  • Red5 和BigBlueButton的实现作为一个例子
  • Cumulus 是Red5对Cirrus的实现
  • HTML5及其许多新特性(不过看起来要到2014-2015年才有)
  • 也许还有一些我遗漏的Jabber/Speex之类的实现

我是不是漏掉了什么?
什么是最好的解决方案呢?

另外(为了更准确),我想在我用Django/Python开发的应用中实现这个功能。

3 个回答

0

很遗憾,现在的现实情况是我们还在使用Flash。不过幸运的是,有一个叫做haxe的开源编译器,可以用来处理Flash的SWF格式。你可以用它来制作各种各样的东西

在链接的例子中,服务器是用haxe写的(基本上就是AS3),然后编译成NekoVM(一个Apache模块)能理解的指令。不过即使你不太懂,这个例子也能给你提供一个不错的参考。

0

你是不是想做一个类似于Chatroulette的网站?他们支持双向的视频和麦克风功能。为了实现这些,他们使用了Flash Player 10的点对点技术和Wowza媒体服务器来支撑他们的网站。

3

最难的问题是,你应该在客户端使用什么来捕捉和播放用户的摄像头视频。选择不多,因为你用的东西必须被现代浏览器广泛支持,而在自己的服务器上你可以随心所欲。

你可以采取三种主要的方法:使用HTML5,使用现有的插件技术,或者自己创建一个插件。

第三种方法可能是最难的,我不推荐你这么做。你需要维护至少五个不同版本的插件(每个主要浏览器一个),而且用户还得自己安装。

对于第二种选择,现在有三种主要的插件技术,因为ActiveX已经不再使用了:Flash、Silverlight和Java小程序。我建议你不要用Silverlight,因为它不太方便移植。

所以你剩下的选择就是Flash、小程序和HTML5。在这三者中,Flash是使用最广泛的,但它有一些缺点,而且大家都在逐渐放弃它。HTML5是未来的趋势,虽然标准要到2014年才会完成,但预计不会有太大变化(最后一次更新是在2011年5月),而且主要浏览器已经支持了很多内容——不过WebRTC API似乎还没有支持,但我相信Firefox和Chrome很快就会支持。

撰写回答