基于标准 WebRTC 低延迟直播的开源实践

本文探讨了直播延迟问题及其对用户体验的影响,分析了现有直播架构的优缺点,并介绍了基于标准WebRTC的低延迟直播开源实践。通过开放的信令协议和媒体协议,实现了延迟降低至1秒左右,首屏200-400ms,同时通过优化如GOP缓存、Pacer平滑发送等策略,提高了直播质量。
摘要由CSDN通过智能技术生成

自上世纪末,流媒体直播技术兴起以来,伴随着网络基础设施的发展脚步,直播也同频共振般地起势。而近年来 AI、云计算、音视频等技术日趋成熟,以及新冠肺炎疫情带来的“宅经济”刺激,使直播行业的发展势头被进一步激活。

通过网络直播,你可以轻松观看到大洋彼岸正在进行的紧张体育赛事,也可以足不出户就阅尽祖国的大好河山、日出日落,甚至与 6000 万陌生人一起“云监工”火神山医院建设进度,为疫情防控力量点赞。

直播是个好东西,但,直播延时并不是。

或许你曾熬夜守在电商直播间,在秒杀倒计时中,因延时被人捷足先登;也或许在上网课时,因延时错过了重要的知识点;还或许在体育比赛关键时刻,因延时被提前“剧透”了结果。

凡此种种的破坏性体验,皆是「延时」惹的祸,市场对低延时的直播方案提出了需求。

在介绍低延时直播方案前,我们先来看看当下典型的直播架构。

典型的直播架构

在典型直播架构中,左边是推流客户端,协议上才采用RTMP上行。右边是拉流客户端,支持不同的拉流协议拉流,比较常见的是:RTMP, FLV, HLS。

 现有架构的优点 

这套框架很好的利用了CDN厂商或者说云厂商的能力。尽管拉流协议没有统一,但由于rtmp/flv/hls等拉流协议是比较成熟的流媒体协议,经过多年的发展,各家CDN厂商广泛支持。在云端能力的支持下,服务端并发能力和拉流端加速能力大大增加了,直播行业蓬勃发展。

低延迟直播的现状

直播行业里卡顿和延迟就像是天平的两端。延迟做的越短,卡顿越高。延迟越长,卡顿越少。

一般场景下都是客户端用更大的buffer时长,牺牲延时来满足流畅性。随着行业的发展,在某一些应用场景对延时时间的要求越来越苛刻,比如体育比赛直播,教育场景下老师学生互动等,这时候现有常见的直播流媒体协议的缺点就体现出来了。

一般rtmp协议直播延时在3-10s,如果经过层层CDN的缓存和转发,超过10秒也是常有的事,flv和hls协议的延时更高。就拉流端来说,延

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值