2009-09-16 370 views
5

我在寻找最佳的解决方案,这将让我带有2个用户(仅2在这一点上)之间的实时视频/音频会议到Flash游戏平台。 视频聊天不只是一个额外的功能,它是主要的功能。网络P2P视频confrence解决方案

我主要是看开源实现什么我就可以实现我自己,但如果是正是我需要会考虑商业化的产品。

这里有几件事情我已经看了,但到目前为止,我没有发现任何足以其中的好:

  1. Flash播放器10的P2P能力 听起来前途,但我知道 事实上,Adobe尚未发布 关于RTMFP 协议的任何信息,并且此时没有 商业服务器支持它 。

  2. 流中的所有的 视频/音频度过一个闪光 服务器(不P2P),但是从我个人的 的经验,你没有得到一个 流畅的对话。
    我觉得TokBox使用此方法

  3. Java小程序是一个可能的解决方案 太(执行P2P),但我不 认为这将是一个很好的和优雅的 解决他们在游戏中 结合此时(并且要求用户 授权他们)。顺便说一句,我找不到任何有用的实现。所以,如果你知道任何,我会研究他们。

  4. 谷歌Gmail视频聊天使用 定制的(专有)浏览器 插件它执行P2P和流 视频/音频到 Flash播放器。这是一个可能的 解决方案,但我宁可不执行 整个p2p协议栈+ 在这个阶段的浏览器插件和 专注于其他方面的 游戏本身。我认为他们是使用类似于Jingle基于XMPP协议,他们已经释放Jingle librarby但没有视频confrencing实施。

  5. 编辑:针对布兰登:
    我知道的Adobe Stratus的的。层云 是一个测试,托管聚会服务 艾滋病的Flash Player 端点(RTMFP服务器)之间建立通信 。
    这 层云的当前版本是 抢鲜并设计为只能 评估目的。 服务不是最终的。
    有没有 保证服务将 继续存在未来或 关于未来 成本的任何信息。
    这就是为什么我不认为 它可以被用来作为商业 解决方案。至少还没有。

我很感谢您的建议和意见。谢谢!

回答

2
  1. 有问题的服务器目前称为Stratus。你可以在Adobe Labs找到更多关于它的信息。
  2. 使用基于服务器的Flash解决方案,您绝对可以获得流畅的流媒体播放,但是您必须拥有足够的带宽才能支持所有流(两个人对话的4个流 - 上下2个)。这里有几个选项,但最好的两个可能是Adobe's Flash Media Interactive Server和开源(而且非常棒)Red5
  3. 我同意基于小应用程序的解决方案将不雅观,但它可能是目前获得p2p视频的唯一真正方法。
  4. Jingle非常酷,但正如你所提到的开源位不支持视频呢。我不认为重新实施它是一个真正可行的解决方案,只是因为需要付出的努力。
+0

Branden,感谢您的回复 1.请参阅关于Stratus的编辑 2.我还没有试用过Red5,因为我正在寻找一个p2p解决方案。我知道它,并正在考虑使用它或另一个Flash Socket服务器,允许闪存像ElectroServer流一样 – dtroy 2009-09-17 02:51:23

+0

根据我的经验,ElectroServer扩展得非常好,并且在数据方面做得很好,但是它在视频流方面有一些问题 - 但这是大约一年前。 Red5最终成为我与之合作的解决方案。我们不需要它为我们的项目提供基于原点/边缘的设置,但是我听说它可以用来扩展相当好的事物。 – 2009-09-17 03:55:11

1

嗯,我迟到了这个派对,但是冰冻山(我工作的)有一种产品,现在叫做IceLink,它可以做你想做的。它将在浏览器支持时使用本机WebRTC,并回退到Java小程序。

针对特定的问题,你问:

  1. RTMFP:是的,专有的通信是没有乐趣。令人失望的是,他们还没有打开规范。

  2. 非P2P绝对会带来性能上的打击。而且,可扩展性成为一个问题。

  3. 当浏览器没有本地WebRTC(这是我们所用的路由)时,Java applet是获得纯UDP端口的唯一方法。
  4. 正如您所指出的,自定义插件在多个方面都很粗糙。 Java小程序不是很好,但至少它不是一个完整的下载/安装过程:)

希望有一点帮助!