WebRTC-如何同步媒体流

时间:2018-10-01 05:57:20

标签: browser synchronization webrtc gstreamer

我以一种非常规的方式使用WebRTC。

我有多个由“广播”对等方生成的流,这些流被发送到多个“接收”对等方的集合。

我打算使用SFU媒体服务器(也许是Jitsi或Kurento)

至关重要的是,这些流以同步方式在接收对等端呈现。

我可以使用哪些同步方法?通常,对于WebRTC来说这不是问题,因为对等体之间通常没有一致的时钟,但是在我的情况下,所有流源都有一个共同的时钟。

我能想象的唯一方法是:

  1. 不用担心,希望WebRTC的低延迟将使所有内容保持同步。

  2. 以某种方式在WebRTC流帧中编码时间戳记元数据,并以某种方式与浏览器中的javascript同步显示。

  3. 使用GStreamer之类的工具可以执行视频同步,将流混合为单个流,然后将其转发到媒体服务器(从而转发到接收客户端)。我对如何实际执行同步并不太了解。

任何想法和建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

Net Insight生产的SYE系统是唯一能够同步低延迟流(在编写本文时)的OTT系统。他们能够在低延迟模式下将任何设备同步到单位毫秒。

他们没有提供我所知道的任何开源,但是您可以通过下载使用它的应用程序来进行检查。 Primetime

游戏每天CET 20:00开始,将其下载到几部手机/平板电脑上以验证同步部分。

但是,还有其他一些系统可以同步我发现的播放。

HibbTV

HibbTV在我解释该解决方案时将重点放在更多IPTV替代解决方案上。他们不会以互联网的狂野西部为目标。我可能是错的,请纠正我。

W3C MULTI-DEVICE TIMING COMMUNITY GROUP

前不久向研究人员讲话。他们可以同步播放,但是他们以协作观看为目标。据我了解,低延迟部分不是范围的一部分。

然后,当涉及WebRTC,LHLS,MPEG-DASH CMAF和所有其他解决方案时,它们没有时间感,因此无法使用4G,WiFi等各种访问技术在不同的设备上渲染相同的视频帧或电缆,甚至设备使用相同的技术,因为渲染是由缓冲区控制的,而不是时间控制的。

/安德斯