如何实现直播秒开技术?

  目前国内直播行业已呈现一片红海,各直播产品的用户增长速度在逐渐放缓,行业内竞争进入白热化阶段,急需通过在直播体验上的精细化运营来保障平台营收。

  如针对重大活动、头部主播进行直播体验优化保障。对于出海APP来说更是如此,复杂的网络环境、机型设备等问题,导致直播产品面临诸多体验问题,如首帧加载时间过长、画面模糊、卡顿等,极度影响了用户的直播观看体验,导致头部主播离家出走、营收下降、用户流失严重、APP 活跃度下降等问题,还有些直播系统甚至需要缓存几十秒才能加载出正常画面,那么,如何在直播系统开发中缩短首屏打开时间呢?以上问题出现的原因通常可以从网络、设备、成本三方面来进行归纳。

  直播体验拦路虎

  网络

  ·网路环境复杂

  ·地区之间网络差异巨大

  ·存在跨网等情况

  ·CDN 质量不稳定

  设备

  ·终端设备机型种类繁多

  ·部分地区低端机型占比高、问题复杂

  成本

  ·使用 RTC 做直播效果好,但成本较高

  ·画质高清带来成本增加,还容易引发卡顿,该如何确定合适的画质是让人头疼的问题

  ·全链路数据监控系统复杂

  ·如何将有限的资源更好的用在高收益的地方

  本篇文章将针对秒开、清晰度、流畅度这三个技术方向进行技术解析,带你了解ZEGO即构科技在畅直播服务方案上的核心技术优化思路。

  1、可定制化的调度策略

  首先说一说接入调度。接入点的好坏直接影响拉流质量,也直接影响建连速度。如果客户端与接入点的网络较差,比如存在200ms的RTT,那么即使能在一个RTT内完成建连和拉流,这里至少也需要200ms后才能看首帧画面。如果存在丢包,可能会引入更大的延迟。传统的CDN是使用域名解析的方式来指定接入点。一定程度上解决了就近接入和负载均衡的问题,但是仍然无法实现更精准的可定制化的调度策略。

  ZEGO为了解决这些问题,自建了调度系统。该系统可以根据客户的业务模型定制最合适的调度方案。即构自建的统一接入层,负责解决全球用户第一公里的接入质量,能保证用户接入到时延质量最优的接入节点。

  例如我们实现了可以精确到人级别的调度能力,这样可以在资源有限的情况下,优先保证热门主播直播间的体验。简单的说就是,热门主播会得到标记,标记后的热门主播会得到全网最好的接入资源,观众因为拉取热门主播的流,同样可以得到最好的接入资源而带来更好的观看体验。

  再例如ZEGO的调度系统可以结合源的位置给出最合适的接入点:比如主播在深圳推流,如果单纯的根据就近接入的原则,那么这个观众大概率会选择广州的接入点。这样广州的接入点需要回源到深圳,这样分发的链路变长,不但增加成本,而且回源也引入了更多延迟和增加了首屏加载时间。

  ZEGO的调度系统由于参考了源的位置,广州的观众可以直接从深圳拉流,而无需回源。当然,这里的前提是我们认为广州的观众接入广州或者接入深圳并无链路质量上的差别。域名解析的方式,由于无法带入源信息的原因,无法实现如此精准的调度。另外,链路的质量可能是时变的,在不同的时间段可能存在不同最优接入点,由于DNS缓存的原因,域名解析的方式也很难及时的给出时变的调度结果。

  总之,ZEGO的调度系统考虑到了空间,时间,运营商,热度,位置等信息,给出最优的调度结果。

  2、建联和回源

  然后我们说一说建连和回源。由于TCP协议三次握手的存在,建立一个TCP链接至少需要1.5个RTT,加上应用层的数据交换,用户至少要在2个RTT之后才能看到首屏画面。而ZEGO通过优化私有协议,可以实现0 RTT建连,最少可以在1 RTT后即可展现首屏。

  另外,一种直观的回源方式是逐级回源,可以看成是串行的方式:A回源到B,B发现自己并不存在该流资源后再回源到C。这种多级跳转在跨国线路中普遍存在,有时需要 4-5 跳才能实现很好的传输效果。但多跳的链路会使得串行的回源方式显得低效,回源的总时长为各跳之和。

  ZEGO 则采用并行回源的方式,即A回源B,B回源C同时进行,这样可以将回源的总时长压缩至各跳中的最大值。以上打通了整个传输链路,拉流端可以接收到音视频数据。

  3、播放器的自适应技术

  影响秒开的最后一个环节是播放器。目前很多开源的播放器为了减少卡顿,都需要预先设置一个播放的缓冲区,填满缓冲区后才开始解码渲染。缓冲区设置的太小容易频繁卡顿,缓冲区太大,填满缓冲区的时间变长,直接影响秒开体验。

  而 ZEGO 的播放器则采用了自适应的缓冲技术,在播放过程中,实时的根据网络的好坏即时的调整缓冲区的大小来应对网络的变化。也不存在填满缓冲区才开始解码播放的问题,可以理解成,首帧收到的那一个刻已经开始解码渲染。相比填满缓冲区才开始解码渲染,假定设置1秒的缓冲区大小,即使拉流初期以5倍于实时码率的速度进行传输,填满缓冲区也要200ms,这里的优化显著。

  秒开方案上线后,国内大盘秒开率达到99%,在所有的秒开行为中,85.07%的用户在500ms 内打开,秒开率相对提升14.5%,在泰国等网络较好的区域,实现96.8%的秒开率。

  畅直播的系统架构,可以灵活高效的解决流畅性全链路问题,支持不同业务场景。一次接入,即可获得CDN直播、CDN Plus、L3等多种服务,并可针对地区、人群等多种维度,通过控制台、API等设置差异化服务,且平滑切换RTC连麦。All-in-One全链路升级的一站式直播服务,秒开、流畅、超高清画质,一次接入,畅享直播!

猜你喜欢

转载自blog.csdn.net/weixin_57727992/article/details/129518892