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

2ledvvac  于 2022-09-21  发布在  Apache
关注(0)|答案(3)|浏览(176)

为了构建一个网络会议平台,我在最近的一个项目中使用了bigbluebutton。我对服务质量不满意,注意到语音和视频之间存在延迟。

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

BigBluButton做得很好,源代码也写得很好。据我所知,Flex仅限于媒体服务器实现的选择,比如不可能实现UDP SOTS等。

所以我的问题是,除了Flex之外,在浏览器中实现视频聊天应用的另一种方式。JavaFX是一个好的解决方案吗?

mctunoxg

mctunoxg1#

我是BigBlueButton的开发者之一。在最新版本的BigBlueButton(0.8)中,我们用FreeSWITCH替换了星号,并转向SPEEX协议。

我不是说BigBlueButton对你的应用程序来说足够好,但我建议你尝试最新的版本,因为你会注意到0.8中的音频延迟比0.71a中的要小得多。

看见

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

向您致意,...弗雷德

BigBlueButton开发者

j8ag8udp

j8ag8udp2#

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

不是的。也许是在未来(比如明年的JavaFX 3.0),但不是现在。

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

要自己构建这样的支持,您需要依赖一个非JavaFX库(如lti-civil),然后将其接口到一个JavaFX应用程序中。由于JavaFX仅仅是Java,而且可以将JavaFX应用程序控件嵌入到Swing小程序中,这一切都是可能的,所以您可以考虑这样做。要实现具有BigBlueButton所有功能的端到端解决方案,将需要大量的工作。

6ovsh4lw

6ovsh4lw3#

您必须超越JavaFX API,深入Java API本身。

我认为纯Java小程序可以在90年代Flash还不存在的时候做麦克风和网络摄像头的事情。

您只需要使用核心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

相关问题