停课不停学,优酷直播如何将网课点名延迟降到0.6s?

2020 年 2 月 13 日 阿里技术

阿里妹导读 :受疫情影响,各中小学校延迟开学,优酷宣布发起“在家上课计划”,为无法到校教学的老师们提供免费的直播授课工具,直播课程将于2月10日开始陆续上线,在直播过程中如何提升和保障流畅的互动体验?优酷直播流媒体团队做了低延时流媒体技术的探索实践,实现了在用户体验不下降的基础上,让主播与主播延时<300ms,播与粉丝延时<600ms,解决了直播间各类互动问题。接下来,阿里文娱的乾戒将具体介绍探索过程。


一、行业的用户体验分析


互动直播场景中有主麦主播、辅麦主播、粉丝三个要素,这三者之间关系构成了直播间的各种互动场景。


1.主麦主播、辅麦主播可以无障碍地进行音视频通话,通常延时在300ms以内;


2.(主麦、辅麦)主播与粉丝互动场景;主播说话,而粉丝以文字、图片、送礼物等方式进行互动;这种差别造成一次互动的延时在3000ms以上,想象一下如下互动场景:


  • 进场特效播放完依然没有收到问候;

  • 当主播与粉丝一起玩“王者荣耀”时需要偷塔时,无法满足;

  • 当主播与主播PK时,其中一个主播最后几秒想拉票时,无法满足;

  • ... ...


如何提升直播过程中三个要素之间的互动,让主播与主播之间、主播与粉丝之间达到一致的用户体验?优酷直播流媒体团队做了低延时流媒体技术的探索实践,实现了在用户体验不下降的基础上,让主播与主播延时<300ms,播与粉丝延时<600ms,解决了直播间各类互动问题。


二、作茧自缚:传统解决方案


传统直播解决方案中主播之间以实时通信的方式传输延时小于300ms,但是主播与观众之间通过链路传输、CDN分发整个延时往往在3000ms左右,如下图:

            

               

从图上我们可以看到产生延时的主要原因就是RTMP传输链路、CDN环节、观众播放器缓存三个环节产生;如果想要提升用户的体验,就必然从这三个环节上做改动,尤其是CDN把持了传输链路环节,然而CDN不是你想改就能改的。


基于这样的分析我们可以得出这样的结论:


  • 视频CDN大大减少了开发人员的工作量;

  • 你能做多好,取决于你控制的链路有多长;

  • CDN侧不可控,所以等待CDN的改变也遥遥无期;

  • CDN侧不可控,所以做一个和服务器交互的低延时播放器也没戏;

  • 传统的解决方案是一张温柔而又可怕的温床。


三、蜕变之痛:低延时直播系统


针对上面的问题,我们解决方案简单粗暴:做一个全链路都可以控制的流媒体传输系统,如下图:



1. 山重水复疑无路——项目挑战


想好就做,但是蛮干往往没有好结果。这个设计使用CDN的思想改造了整个实时通信系统,既兼顾CDN的大并发分发,又兼顾实时通信的低延时。无论是谈实时通信系统还是谈CDN都不是个小题目,何况两个融合的系统,这里面“水很深”“坑很多”。



然而挑战还不止这些,实际的工程中,如何降低延时、如何保证流畅率往往有是相互矛盾的话题,降低延时就要降低播放侧buffer和服务侧的buffer,随之卡顿率就会上升;而想流畅率上升就要增大buffer,随之延时就变得更长;无论怎么调整buffer,问题都这里,如何解决呢?



2. 柳暗花明又一村——解决方案


低延时直播系统根据具体业务需求,融合CDN、私有实时通信协议、WebRTC、云原生等技术完美解决了项目的各类苛刻要求,把问题模型转换为技术角度看:



2.1 延时的产生及可控性分析:



从上图我们可以看出来,可控的唯二也就是传输层、播放器buffer两部分了。在低延时项目中RDN系统控制了整个传输过程,优化了每一个细节,把延时降至118ms以内,低延时播放器自适应动态控制buffer大小、严格控制音视频加减速,保证流畅率的基础上又使延时在415ms以内。通过控制播放侧目标延时实现流畅优先、延时优先两种策略,满足主播连麦互动、粉丝互动两种业务场景。


2.2 CDN进阶为RDN系统


传统的CDN、视频会议系统可以自行查看网上的方案,RDN系统是一个融合CDN架构,并以视频会议媒体服务器为节点的系统。RDN在进行媒体传输采用懒加载的方式进行,当主播把流传输至接收的边缘节点,此时如果有观众播放流,会通过GSLB返回最近的边缘节点并进行资源的索引把流快速的下发至播放侧的传输SDK。媒体流的分发示意图如下:



2.2.1 唯快不破——传输延时如何降至最低


传输延时、播放侧延时是唯二可控的部分,且看我们如何把传输降到最低:



2.3 播放器进阶为低延时播放器


低延时播放器是系统中延时控制的重要环节,是系统中唯一延时可控且可调的部分。相比于传统播放器功能既要满足流畅率、秒开率、音画同步等用户指标,又要保证延时足够低。低延时播放器架构图:



2.3.1 用户体验第一——低延时场景下如何保证用户体验


低延时播放器通过定制优化后的neteq,抵抗网络的抖动、丢包等问题,显著提升弱网情况下的用户体验,通过滤波后的音画同步方案,保证在音视频快速加减速同时又能保证用户的体验。



2.4 扁鹊全链路监控系统


扁鹊系统收集端侧、服务器侧日志,不但整个链路的服务质量,也用于排查各类线上问题。



. 羽化之美:数据报告


在流畅率、秒开率不低于传统直播方案的场景下,互动延时指标大幅降低86%。系统自2017年稳定运行至今,为直播用户提供了低延时互动、点击即见、清晰、流畅的高质量互动直播间。并支撑了来疯秀场PK,低延时直播各类场景,保证了来疯两年多的各类比赛顺利进行。


五. 回顾历史:我的思考


低延时直播系统是由传统直播技术、实时通信技术、WebRTC技术融合,专为互动直播而生的系统。达到了文字和音视频同步的效果,像“欢迎大哥”“拉拉票”、“打他”这些欢迎、拉票等直播互动再也不需要等待。回顾整个系统的诞生,我的技术思想也在逐渐的变化,回想初次接触这三个技术:


  • 传统直播技术 = RTMP、CDN、ijkplayer

  • 实时通信技术 = MCU、SIP、RTP/RTCP

  • WebRTC技术     = JSEP、P2P 、SFU、ICE、SDP、neteq


后来深入了解这些技术细节、互动直播业务的需求、开发过程中的痛点,开始思考可以用这些技术再往前走一步,自研一套低延时直播系统一劳永逸的解决这些问题。经过前期详细论证确定正确方向后,虽然过程困难重重,秉着“只要路对了就不怕远”“只要精神不滑坡,方法总比困难多的”精神,最终还是安全的抵达了对岸。

 
疫情下,国内实际口罩产能是多少?

2019年中国大陆地区口罩产量超过50亿只,可用于病毒防护的医用口罩占比高达54%。在当前疫情下,国内实际口罩产能是多少?未来一个月的产能是多少?为什么说“产能在线”是下一次“危”&“机”前制造企业的必要准备?本次直播将为数字经济时代的企业转型带来新的启发。扫描下方二维码,或点击文末“阅读原文”看直播




你可能还喜欢
点击下方图片即可阅读
为记录数万人的健康情况,阿里造了1个机器人

疫情下的阿里员工,约定这样上班

关注「阿里技术」
把握前沿技术脉搏


戳我,看疫情下,国内口罩的实际产能
登录查看更多
0

相关内容

CDN的全称是Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。
【CVPR2020】时序分组注意力视频超分
专知会员服务
30+阅读 · 2020年7月1日
华为发布《自动驾驶网络解决方案白皮书》
专知会员服务
125+阅读 · 2020年5月22日
轻量级神经网络架构综述
专知会员服务
96+阅读 · 2020年4月29日
阿里巴巴达摩院发布「2020十大科技趋势」
专知会员服务
106+阅读 · 2020年1月2日
【大数据白皮书 2019】中国信息通信研究院
专知会员服务
137+阅读 · 2019年12月12日
【白皮书】“物联网+区块链”应用与发展白皮书-2019
专知会员服务
93+阅读 · 2019年11月13日
数据库之架构:主备+分库?主从+读写分离?
架构文摘
8+阅读 · 2019年4月23日
【干货】电商数据中台如何构建?
AliData
11+阅读 · 2019年4月4日
如何运营15万付费用户?
三节课
6+阅读 · 2019年2月28日
招行高端卡套路深!“理财办卡”坑了多少人?
凤凰财经
3+阅读 · 2018年12月30日
怎样用声纹识别,提升智能硬件产品的用户体验?
人人都是产品经理
6+阅读 · 2018年8月27日
手把手教你搭建智能客服系统
InfoQ
13+阅读 · 2018年4月3日
小米Note3 ‖ 国产首款支持人脸解锁手机
机械鸡
4+阅读 · 2017年9月12日
Arxiv
4+阅读 · 2019年8月7日
Neural Image Captioning
Arxiv
5+阅读 · 2019年7月2日
Attend More Times for Image Captioning
Arxiv
6+阅读 · 2018年12月8日
Image Captioning based on Deep Reinforcement Learning
Mobile big data analysis with machine learning
Arxiv
6+阅读 · 2018年8月2日
VIP会员
相关VIP内容
【CVPR2020】时序分组注意力视频超分
专知会员服务
30+阅读 · 2020年7月1日
华为发布《自动驾驶网络解决方案白皮书》
专知会员服务
125+阅读 · 2020年5月22日
轻量级神经网络架构综述
专知会员服务
96+阅读 · 2020年4月29日
阿里巴巴达摩院发布「2020十大科技趋势」
专知会员服务
106+阅读 · 2020年1月2日
【大数据白皮书 2019】中国信息通信研究院
专知会员服务
137+阅读 · 2019年12月12日
【白皮书】“物联网+区块链”应用与发展白皮书-2019
专知会员服务
93+阅读 · 2019年11月13日
相关资讯
数据库之架构:主备+分库?主从+读写分离?
架构文摘
8+阅读 · 2019年4月23日
【干货】电商数据中台如何构建?
AliData
11+阅读 · 2019年4月4日
如何运营15万付费用户?
三节课
6+阅读 · 2019年2月28日
招行高端卡套路深!“理财办卡”坑了多少人?
凤凰财经
3+阅读 · 2018年12月30日
怎样用声纹识别,提升智能硬件产品的用户体验?
人人都是产品经理
6+阅读 · 2018年8月27日
手把手教你搭建智能客服系统
InfoQ
13+阅读 · 2018年4月3日
小米Note3 ‖ 国产首款支持人脸解锁手机
机械鸡
4+阅读 · 2017年9月12日
Top
微信扫码咨询专知VIP会员