【问题标题】:best way to implement video chat on a browser [closed]在浏览器上实现视频聊天的最佳方法 [关闭]
【发布时间】:2012-06-06 08:26:10
【问题描述】:

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

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

Bigbluebutton 做得很好,源代码写得很好。据我了解,Flex 它自身仅限于媒体服务器实现的选择,例如无法实现 UDP 套接字等。

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

【问题讨论】:

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


    【解决方案1】:

    我是 BigBlueButton 的开发人员之一。在最新版本的 BigBlueButton (0.8) 中,我们将 Asterisk 替换为 FreeSWITCH 并移至 speex 协议。

    我并不是说 BigBlueButton 对您的应用程序来说已经足够好,但我建议您尝试最新版本,因为您会发现 0.8 中的音频延迟比 0.71a 中要少得多。

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

    问候,...弗雷德

    BigBlueButton 开发者

    【讨论】:

    • 非常感谢弗雷德。我知道问题也来自 Flex 它本身,因为它不允许使用 UDP 数据包,这可能会导致音频和视频流出现问题。我错了吗?
    • Flash 限制应用程序使用 TCP/IP,并且不提供 UDP 连接。
    【解决方案2】:

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

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

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

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

    【讨论】:

    • 那么 javaFx 对 Flex 的附加价值是什么?例如,javaFx 可以显示视频吗?
    • 是的,JavaFX 可以显示视频。特别是对于视频聊天,它目前没有提供超过 Flex 的附加值(因为 JavaFX 不提供任何视频聊天工具)。
    • 视频缓冲可以使用UDP连接来完成吗? flex 的问题之一是在不稳定连接的情况下,如果行为非常糟糕
    • 我不认为 - JavaFX 仅支持 FILE、HTTP、JAR 协议,并且计划在 JavaFX 2.1 发布后支持 HTTP 实时流式传输。如果您能找到一种方法让 Java URLConnectionHandler 通过 UDP 接受 HTTP 数据,也许它会起作用,但您可能需要为这种奇怪的协议栈实现自己的服务器。要接受带有视频缓冲的 UDP,您可能还需要合并一个备用库来替换或补充 JavaFX。
    【解决方案3】:

    您必须超越 JavaFX API 并深入了解 Java API 本身。

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

    您只需要使用 JMF、JNI、JNDI 等核心 Java 类

    例如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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-18
      • 1970-01-01
      • 1970-01-01
      • 2014-02-09
      • 2017-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多