0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

超低延迟直播技术方案及应用

LiveVideoStack 来源:LiveVideoStack 作者:LiveVideoStack 2020-11-02 09:54 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

随着直播业务的发展,在线教育,连麦直播、赛事直播等高实时性直播场景的出现,用户对于直播流畅度、低延迟等性能的要求愈加严苛。腾讯云直播技术高级工程师陈华成 从5G时代未来直播产品的发展趋势、直播行业业务新需求出发,分享腾讯云快直播(超低延迟直播)的建设方案、应用以及技术优势与优化实践。

大家好,我是腾讯云直播技术高级工程师陈华成,这次和大家分享的主题是腾讯云快直播——超低延迟直播技术方案及应用。主要涵盖以下四个方面:直播行业的背景;直播行业的现状;快直播(超低延迟直播)方案;快直播——延迟、秒开、抗性、画质提升。

01 PART 直播行业的背景 1.1 直播行业新变化

首先我们来看一下整个直播行业在近期有哪些新的变化。5G的到来将使得边缘带宽由Mb增长至Gb、带宽容量增加、延迟由30ms减小至1ms左右;此外应用场景也将得到丰富,调研发现与5G最相关的10大场景均是低延迟音视频应用,比如电商类、在线教育、云游戏、VR、AR、物联网自动驾驶等等。 1.2 快直播(超低延迟直播)应用场景 本次分享主要介绍两个快直播(超低延迟直播)应用场景。

直播带货兴起——要求延迟小于500ms

首先是直播带货。相信大家近一年对直播带货应用场景感受很深。据统计,今年五一期间整个直播带货量增长了五倍左右。那带货场景有哪些呢?其实就是把线下的促销变成了线上,上图中列举了两个典型场景。第一个是低价秒杀促销,主播为了活跃气氛带动更多的人参与进来,她会给一些低价商品让大家抢购,秒杀的过程要求延迟很低。第二个是主播为了活跃气氛发红包,这两个场景对延迟的要求都很高。现在标准直播的延迟一般在三到几十秒,是无法满足带货需求的。延迟高也限制了带货新玩法的出现,导致现在的直播带货几乎没有互动。

教育类

第二类场景是教育类客户大班课,大班课比较火的主要原因是名师价值最大化。在线教育类企业最主要就是把名师价值最大化,同时保证教学效果。在线教育大班课这种模式,老师面向的可能是上百万学生在听讲,课程讲解结束后老师一般会出一个题目让学生练手,比如数学中配图的解答题、英语的选择题。如果延迟比较高达到几十秒,那老师与学生的互动体验就非常差,老师与学生之间收、发题目的过程会因为延迟较高,导致老师认为已经把题目发给学生,学生实际上还没看到题目,而在老师收题时,学生可能刚看到题目或根本没看到题目,从而导致收题率不高,学生投诉比较多,这是对低延迟刚性的需求。 02 PART 直播行业现状 2.1 标准直播现状

现在直播行业大多数用的是标准直播,它的直播协议主要是FLV、HLS、RTMP。FLV延迟一般在2-10秒左右,它的延迟因素主要是GOP大小和TCP弱网传输积压。HLS的延迟更大,一般是几秒到几十秒,它的延迟因素主要是GOP大小和TS大小,HLS是以文件索引和下载的方式,它每个文件的的大小限制了它的延迟,很多播放器要等3个TS才播放,而3个TS可能就有几十秒了,所以HLS在标准直播中延迟最高。此外RTMP的延迟因素主要是GOP大小和TCP弱网传输积压。以上介绍的集中标准直播都是基于TCP的,当前QUIC的引入对弱网带来的延迟有一定的改善,但QUC没有流媒体特性,在这里不是一个最佳方案。 2.2 TCP不适合低延迟直播的原因

延迟确认+捎带应答 带来感知延迟

TCP有延迟确认和捎带应答,比如数据发过来不是立即对每个数据响应ACK,攒一定的数据量才会响应,这就会带来感知延迟,超低延迟整体只有几百毫秒,这一部分带来的延迟是不可忍受的。

弱网场景,可靠传输导致数据积压

弱网场景下,像TCP机制会导致数据积压。举个例子,主播在推流,然后发送缓存,因为TCP有一个可靠缓存的对列,而网络条件比较差的时候,发送窗口发送完了却一直没有ACK,窗口一直没有往前滑动,就会导致直播这种实时传播的数据积压,甚至会导致几秒钟或几十秒钟的延迟。

ACK机制导致通道利用率低

ACK机制会导致通道利用率低,在ACK之后不是立马就返回的,还有ACK的等待时间。在这段时间通道未被利用就会导致通道利用率变低。

无流媒体特性、可靠传输导致无效重传

直播是有时效性的,上图1、2、3、4、5、6,可以看到5、6数据已经过期了,但无效的重传会一直重传,直到传输成功,所以无效重传进一步加剧拥塞。 综合以上四点可以得出TCP不适合低延迟直播。 03 PART 快直播(超低延迟直播)方案 3.1 UDP是低延迟直播的必由之路

调研显示,低延迟直播在业界的协议有QUIC、SRT、WebRTC、ORTC,比较而言QUIC的延时还是比较大的,因为他没有流媒体功能;SRT、WebRTC、ORTC延迟都是毫秒级别的,都有流媒体特性,其中SRT、ORTC用的比较少,WebRTC生态繁荣,因此我们选择了WebRTC做超低延迟。 3.2 延迟关键问题在哪里?

我们要做超低延迟,首先就要知道它们的超低延迟出现在哪里?整个直播过程从数据的采集、编码都经过哪些过程? 首先是视频输入摄像头采集的数据,由YUV编码成264、265数据,采集t0,编码t1,推流传输t2,转码t3,再由CDN传输,经过视频解码,最终通过视频显示出来。在这个过程中摄像头采集耗时很小,一般在十几毫秒左右;编码耗时通过调整编码参数也能达到几十毫秒;推流传输是和rtp相关的,基本耗时在十几毫秒到几十毫秒;如果采取高速转码,耗时也不高;最关键的是CDN传输和视频解码,用户的网络现在千奇百怪,对于网络条件好的用户,传输延迟可能不高,但对于网络条件不好的用户,传输延迟可能就要达到几秒甚至几十秒,所以TCP传输延迟是一个不可控的因素。在t5视频播放和解码阶段,目前像Flash播放器、hls、rtmp播放器缓存需要6-10秒,播放器的缓存是产生延迟的关键原因。那为什么不在当前直播条件下把缓存调到0呢?这是由于调到0之后延迟虽然小了,但卡顿会很高。由此可以看到,延迟高的关键在于CDN的传输和播放解码没有很好地配合和互动。所以我们主要要解决这个问题。 3.3 快直播方案

快直播方案改造的就是从CDN分发节点到SDK、再到观众端播放这部分,这样的好处在于主播推流中间的录制、截图、转码等都可以复用,接入简单,可以同时出flv、rtmp、hls、WebRTC的数据流。 3.4 快直播对标准WebRTC进行了升级

此外快直播对标准WebRTC进行了升级。标准WebRTC存在很多限制,音频只支持OPUS、视频不支持H265(H265因为专利的一些问题,因为VP9和H265有竞争关系,谷歌更希望推VP9)、视频不支持B帧、信令交互耗时长、无法透传metadata,这些问题对于在线教育和主播带货是没必要的,可以跳过。而有些客户希望用metadata带一些同步信息,显然标准WebRTC是不支持的。 我们从五个方面对标准WebRTC进行升级,包括支持aac(同时支持adts、latm两种封装)、视频支持H265和B帧、通过STP协商精简了信令交互、可以关闭gtrs以及支持透传metadata。上图就是腾讯云快直播的Demo,从图中可以看到支持H264、H265,Audio格式、加密开关。 3.5 快直播如何接入

快直播的接入其实非常简单,只需要一步就可以从标准直播升级为快直播——升级播放端、其余全部复用。Web/H5端调用浏览器WebRTC接入快直播,App接入需要集成SDK。 3.6 快直播优势

快直播有五大优势: 1.全球分布、覆盖广泛(支持1100+节点,支持25个国家) 2.超大带宽容量(我们的部门拥有了腾讯90%的流量,支持100T+带宽) 3.质量好、成本低(抗30%丢包) 4.接入简单(只要下行SDK做改造就可以了、功能完善、平滑兼容) 5.已大规模使用(内部已接入腾讯课堂、企鹅电竞,外部已接入教育类、电商类的客户) 04 PART 快直播——延迟、秒开、抗性、画质提升 4.1 快直播延迟

我们现在能做到的延迟一般是300ms左右,极限延迟可以做到43ms,这个极限方案主要是给云游戏提供的,硬件编码通过边缘编码处理的方式得以实现。 4.2 快直播首帧耗时秒开

标准WebRTC要经过sdp交互、ice、dtls握手、rtp/rtcp,这里第二步和第三步基本是可以跳过的,ice可以用简单的storm来代替,dtls握手对于不需要加解密的也可以跳过,所以我们做了一个可以通过SRTP协商来关闭dtls握手,所以第二、第三步可以根据需求选择性的开或者关,从而通过精简信令优化首帧耗时。 第二点就是边缘覆盖,我们不同的地方是信令和流媒体sever都部署在边缘节点,这就会保证用户与我们信令和流媒体交互的时候RTT多数会很小,从而就会保证整个信令耗时很短。 另外还有一个影响首帧的是流媒体的回源,如果命中率不高,流媒体需要回源,也是一个首帧耗时的点,所以我们做了个调度按房间来收敛,提高命中率,也就是说在同一个省份看同一个房间的话都让他走到同一个机房。通过以上三点优化首帧耗时基本达到100多ms。 4.3 快直播WebRTC抗性优化

WebRTC抗性怎么优化?这里抗性优化的本质是不断 “感知 + 调整 ”来适配变化的网络,这里的感知主要是RTT、丢包率、瓶颈带宽,通过感知到的网络的变化来调整发包策略、重传策略、FEC冗余策略等等。上图把网络分为两类,有丢包未拥塞的网络(基站的信号弱,WiFi的信号弱),这种情况通过根据丢包率计算重传次数,提高重传成功率,也可以通过FEC冗余发包,在弱丢包或者少丢包的情况下不需要重传。有丢包且拥塞的网络,它的表现主要是是丢包且RTT变大,这种情况又分为两种:一种是我们的码率超过了瓶颈带宽,第二个是码率没有超过瓶颈带宽。上图可以看出I帧与P帧的关系,在视频会中比较特殊的是I帧一般比P帧大8-10倍左右,所以很多时候发包策略不受控制的时候,每次发一帧的时候就是很大的毛刺。

这里我们采取的是场景的识别和动态的适配。 第一种是码率不是瓶颈,我们采用的是自适应的Pacing、根据I帧的播放时间以及buff将它平化掉,就会使得整个发包带宽在瓶颈带宽以下,从而兼顾帧率、帧大小、瓶颈带宽、播放器缓存,整个丢包就会少很多。 第二种是码率是瓶颈,也就是它的码率在瓶颈带宽以下,如果不降低发送的数据量就一定会导致拥塞。我们有两种策略:一种是时域分层,在编码的时候,将视频帧分三到四个级别,比如I帧、P帧、B帧,因为有一些B帧是没有依赖的,我们可以通过丢失一部分的帧直到码率小于瓶颈带宽,也就是通过降帧率达到降卡顿的效果。另一种方式是空域分层,比如说编码的时候,我们会编高分辨率和低分辨率,对于弱网(码率是瓶颈)的情况下,我们通过只发低分辨率的帧使码率小于瓶颈带宽。

以上是我们抗性优化的效果。从左上的图片中可以看到我们在做pacing前I帧的毛刺是很大,通过pacing发包可以减少80%突发毛刺,通过这张图可以看到在我们自己的应用上体现,WebRTC的质量是和flv相当的,而延迟从10秒降低到300ms,并且可以抗30%+丢包。 4.4 快直播画质优化

画质优化主要通过“云+端”来做协同优化,就是源流在编码的时候做修复增强,再通过一定的算法把视频进行压缩输出低码率的流,同时在云端进行云上的预分析,检测出视频的纹理区域以及边缘区域,然后把数据写到SEI中去读出纹理和边缘区域,如果是上采样就提高采样率进行超分,这样通过云端压到低码率、再由终端恢复到高码率的策略从而达到画质最强的效果。

上图是我们云端的优化效果,通过边缘区域的网格增强,平坦区域直接上采样、纹理区域网络增强。

540p的视频优化前效果

优化后的效果,它的边缘和细节清晰了很多

责任编辑:lq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 直播
    +关注

    关注

    1

    文章

    264

    浏览量

    22705
  • 物联网
    +关注

    关注

    2939

    文章

    47317

    浏览量

    407809
  • vr
    vr
    +关注

    关注

    34

    文章

    9692

    浏览量

    156574

原文标题:腾讯云快直播——超低延迟直播技术方案及应用

文章出处:【微信号:livevideostack,微信公众号:LiveVideoStack】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    京东11.11直播技术全面升级,立影3D技术、JoyAI大模型重构沉浸式购物体验

    创新新方向。 立影 3D 技术:在直播间360° 还原实体货架体验 作为京东全球首发的裸眼 3D 商品营销方案,“立影计划”彻底打破了传统直播的视觉边界,带来全新
    的头像 发表于 10-27 14:58 225次阅读

    FPGA中数据延迟方案介绍

    本质上就是对数据进行多级寄存器缓存,延迟时间以clk的一个周期为单位,消耗的就是寄存器。比较适合延迟固定周期以及延迟周期比较短的情况。
    的头像 发表于 10-15 10:23 381次阅读
    FPGA中数据<b class='flag-5'>延迟</b><b class='flag-5'>方案</b>介绍

    240FPS超低延迟网络相机 带宽可控

    延迟在无人设备的控制中是一个很重要的指标,越是低的延迟越能够体现出“人机协同”。而在影响无人设备控制延迟的因素有相机本身延时、画面显示端性能、视频传输协议、编解码能力等。因此,想要很好的控制视频
    的头像 发表于 09-24 17:59 543次阅读
    240FPS<b class='flag-5'>超低</b><b class='flag-5'>延迟</b>网络相机   带宽可控

    技术洞见:THEIA S1 &amp; S1 LITE 直播机实操效果真的棒!

    LITE 面市,将推动专业直播设备市场格局的重构: 挑战传统: 传统设备厂商的繁复直播方案将直面其强大挑战。 技术平权: 自媒体和内容创作者首次能够真正获得集轻便与专业于一身的制作工
    发表于 08-25 15:39

    美颜补光灯方案开发,直播补光灯MCU控制方案

    “小光环”直播美颜补光灯的“智慧大脑”。本文围绕这颗小芯片,给出整套可量产的方案介绍与核心功能拆解,让工程师拿到即可开干,让品牌商拿到即可上市。 系统框图(文字描述,便于阅读) • 供电:5 V
    发表于 08-22 11:44

    干货放送!宏集科技物联网技术直播精选问答集锦,建议收藏!

    宏集直播圆满结束,感谢各位热情参与!直播上,宏集科技多位高级技术工程师针对不同产线的实际应用场景,为大家分析如何突破瓶颈,提高生产效率。直播中,我们收到了众多提问,展现了大家对宏集物联
    的头像 发表于 08-08 18:24 448次阅读
    干货放送!宏集科技物联网<b class='flag-5'>技术</b><b class='flag-5'>直播</b>精选问答集锦,建议收藏!

    索尼推出针对直播行业的创新解决方案

    近日,索尼正式推出针对直播行业的创新解决方案——索尼电影感直播-“无界商显”方案。该方案集成了索尼的“防眩大师”系列商用显示器、相机和麦克风
    的头像 发表于 07-23 16:08 764次阅读

    专业直播触手可及,ZX7981EP直播路由器打破技术壁垒!

    还在为这些抓狂?直播时网络卡成PPT,观众纷纷退出?后台管理复杂如迷宫,手忙脚乱?专业设备连接困难,带宽被疯狂抢占?直播行业爆发,技术门槛却成了拦路虎。是时候告别这些烦恼,迎接真正专业流畅的
    的头像 发表于 07-10 18:49 462次阅读
    专业<b class='flag-5'>直播</b>触手可及,ZX7981EP<b class='flag-5'>直播</b>路由器打破<b class='flag-5'>技术</b>壁垒!

    无限穿墙技术西安品茶工作室南郊北郊教学简约网络延迟

    不同步,导致学生们学习效果不佳。引入无限穿墙技术工作室的解决方案后,网络延迟问题得到了显著改善。老师能够毫无阻碍地展示教学内容,与学生们实时互动,学生们也能清晰地接收知识,学习积极性明显提高
    发表于 07-05 16:21

    抢搭ZX7981EP方案快车,加速直播路由量产

    技术抢占市场份额,这不失为中小厂商弯道超车的上策。ZX7981EP方案以成熟技术底座破局对路由器厂商而言,自研直播路由面临着技术门槛高、认证
    的头像 发表于 05-19 18:04 440次阅读
    抢搭ZX7981EP<b class='flag-5'>方案</b>快车,加速<b class='flag-5'>直播</b>路由量产

    普通路由 vs ZX7981EP:直播路由解决方案的差距究竟在哪?

    直播盛行的当下,一款出色的路由器对于保障直播质量至关重要。普通路由器在应对直播场景时,往往暴露出诸多不足,而启明智显ZX7981EP无线路由器凭借其卓越性能,成为直播路由解决
    的头像 发表于 05-13 18:05 447次阅读
    普通路由 vs ZX7981EP:<b class='flag-5'>直播</b>路由解决<b class='flag-5'>方案</b>的差距究竟在哪?

    XMOS直播声卡——可支持实时音频DSP处理的低延迟音频方案

    XMOS所提供的具有DSP处理功能的直播声卡解决方案凭借卓越的音质和超低延迟,非常适合用于诸如直播、播客广播、唱播(K歌)和游戏等实时应用。
    的头像 发表于 04-21 15:47 844次阅读
    XMOS<b class='flag-5'>直播</b>声卡——可支持实时音频DSP处理的低<b class='flag-5'>延迟</b>音频<b class='flag-5'>方案</b>

    可支持实时音频DSP处理的低延迟直播声卡方案

    本篇介绍直播声卡——具有实时音频DSP处理的低延迟音频设备。对于游戏玩家和短视频直播工作者来说,声卡不可或缺。它除了能将计算设备的数字信号转换为声音信号,还能够提供各种逼真的或者定制的3D音效,提升
    的头像 发表于 03-29 15:19 894次阅读
    可支持实时音频DSP处理的低<b class='flag-5'>延迟</b><b class='flag-5'>直播</b>声卡<b class='flag-5'>方案</b>

    专线直播和公共网络直播相比,延迟差多少?

    专线直播与公共网络直播相比,延迟的差异主要体现在以下几个方面: 1、专线直播的低延迟特性 专线网络通过专用的光纤线路和优化的路由选择,能够显
    的头像 发表于 02-26 20:37 1025次阅读

    2024 OpenHarmony年度技术分享会来啦,预约直播有好礼~

    联合开源鸿蒙技术专家、老师、开发者为大家带来OpenHarmony的最新技术进展、开发心得以及应用实践,共同推动OpenHarmony生态的繁荣与发展! 直播时间: 2024/12/25 14
    发表于 12-25 09:10