CDN视频流中的3个问题以及解决方法( 二 )


实时延迟还释放了与视频流的其他数据正确同步的能力 。这开启了添加聊天功能、实时覆盖叠加和交互式图形、虚拟黑板、实时下注和拍卖出价、GPS数据和许多其他的功能 。例如,一个体育广播可以有一个实时的图形显示功能,它可以与屏幕上发生的最新状态保持同步 。正确的同步与实时延迟相结合,也可以防止恼人的剧透,从而确保不会破坏其他人的观看体验 。它还可以确保聊天中的评论与当前显示的内容一致 。
 
对于这些用例,数据可以通过WebRTC数据通道或单独的websocket通道发送,这可以使用SharedObjects方法实现 。SharedObjects管理多个客户端之间的数据提要,从而实现数据的一致传输 。这样可以确保广播者,订户和任何其他功能之间的完全交互 。
 
在GitHub上可以找到更多示例:
 

  • SharedObject:https://github.com/red5pro/streaming-html5/tree/master/src/page/test/sharedObject
  • SharedObject
IOS:https://github.com/red5pro/streaming-ios/tree/master/R5ProTestbed/Tests/SharedObject
Android:https://github.com/red5pro/streaming-android/tree/master/App/src/main/JAVA/red5pro/org/testandroidproject/tests/SharedObjectTest
 
所有这些关于CDN实时流传输局限性的讨论可能会给你一种印象:即它们应该被纯WebRTC解决方案所取代 。然而,它们在视频流媒体中仍然扮演着非常有价值的角色 。CDN对于交付视频点播内容以及静态对象(如网站和静态图像)仍然很有用 。然而,当涉及到动态更新的元素(如实时视频流)时,CDN永远无法正确处理它们 。与许多其他技术要素一样,市场的需求也扩大并发生了变化 。CND正在试图适应这种情况,但它们基于HTTP的基本架构造成了高延迟、单向流限制和同步问题 。这些问题,会由新的直播架构模型来解决 。




推荐阅读