在浏览器上实现视频聊天的最佳方式

时间:2012-06-06 08:26:10

标签: java flex javafx-2 video-conferencing bigbluebutton

我在最近的项目中使用bigbluebutton来构建网络会议平台。我对服务质量不满意,发现语音和视频之间有延迟。

技术上bigbluebutton使用Flex与red5服务器集成,该服务器将语音发送到Asterisk进行语音混合(Konference),并通过在java中实现编解码器来本地处理视频。

Bigbluebutton做得非常好,来源写得非常好。据我所知,Flex自身仅限于选择媒体服务器实现,例如无法实现UDP sokets等。

所以我的问题是,与Flex不同的另一种方式是在浏览器中实现视频聊天应用程序。 JavaFX是一个很好的解决方案吗?

3 个答案:

答案 0 :(得分:4)

我是BigBlueButton的开发者之一。在最新版本的BigBlueButton(0.8)中,我们用FreeSWITCH取代了Asterisk并转移到了speex协议。

我不是说BigBlueButton对你的应用程序来说已经足够好了,但是我建议你试试最新版本,因为你会注意到音频的延迟远低于0.71a中的音频延迟。

http://code.google.com/p/bigbluebutton/wiki/ReleaseNotes

问候,......弗雷德

BigBlueButton开发人员

答案 1 :(得分:3)

  

JavaFX是一个很好的解决方案吗?

没有。也许将来(例如明年的JavaFX 3.0),但不是现在。

JavaFX目前没有内置摄像头或麦克风支持。

要自己构建这样的支持,您需要依赖非JavaFX库(例如lti-civil),然后将其连接到JavaFX应用程序。由于JavaFX只是Java和JavaFX应用程序控件可以嵌入到Swing小程序中,所以这一切都是可能的,所以你可以考虑它。要了解具有BigBlueButton所有功能的端到端解决方案,将会有很多工作。

答案 2 :(得分:2)

您必须超越JavaFX API并进入Java API本身。

我认为,当Flash甚至不存在时,Pure Java Applets可以在90年代做麦克风和网络摄像头。

您只需要使用核心Java类,如JMF,JNI,JNDI

例如http://blog.boehme.me/2011/05/jmf-video-chat-explained-local-webcam.html

http://www.oracle.com/technetwork/java/javase/tech/index-jsp-140239.html