Windows 8低延迟视频流

时间:2012-10-27 16:43:18

标签: windows-8 video-streaming rtmp

我的游戏基于Flash,并使用RTMP向玩家提供实时视频。视频应从单个位置流式传输到多个客户端,而不是客户端之间。 基本要求端到端视频流应具有非常低的延迟,小于0.5秒。

在服务器和客户端上使用了许多调整,我能够达到约。在环回网络接口的情况下,RTMP和Adobe Live Media Encoder的延迟为0.2秒。

现在的问题是将项目移植到Windows 8商店应用程序。本机Windows 8为IIS + http://playerframework.codeplex.com/提供流畅的流媒体扩展,适用于与实时流畅的流媒体兼容的播放器+视频编码器。从编码器开始,现在我只测试了支持实时流畅流媒体的Microsoft Expression Encoder 4。 尽管在播放器端使用了msRealTime属性,但延迟很大,而且通过调整编码器我无法使其低于6-10秒。不同的消息来源表示,平滑[实时]流媒体不是低延迟视频流方案的选择,而且似乎使用Expression Encoder 4,任何设置组合都无法实现低延迟。有硬件视频编码器支持流畅的流媒体,例如envivio或数字急流,但是:

  1. 他们很贵
  2. 与Expression Encoder相比,我完全不确定它们是否可以显着改善编码器端的延迟
  3. 即使它们可以消除编码器的时间,其余的平滑流(IIS端)也可以支持所需的速度。
  4. 问题:

    1. 如果有的话,可以使用什么技术以亚秒延迟流式传输到Win8客户端?
    2. 你知道玩家可以与win8兼容,还是可以轻松移植到支持rtmp的win8?

    3. 的增添。 Build 2012的实时翻译在桌面模式下使用Rtmp和Smooth Streaming。在Metro模式下,它使用RTMP和Flash Player for Metro。

1 个答案:

答案 0 :(得分:0)

我可以确认Smooth Streaming不会是您选择的技术。在具有完美条件的最佳场景下,您将获得的最佳时间是几秒钟(绝对最小延迟将是块长度本身,即使其他所有内容都有0延迟。)

我认为最有可能使用UDP的RTSP / RTMP或类似的东西是你最好的选择。我将关注视频会议技术而不是广泛的受众流媒体技术。如果我没记错的话,那里有一些.NET组件来处理用于视频会议的RTSP H.264 - 如果我以后可以找到它们,我会在这里发布。

相关问题