Low Latency HLS的实现优化

HTTP Live Streaming(HLS)是Apple公司主导提出并实现的基于HTTP的自适应码率流媒体通信协议(RFC8216)。

说实在的,作为监控领域的玩家,我一直很抗拒Apple HLS协议,但架不住苹果的行业影响力啊,还记得很多年你跟AT&T做项目的时候,对方指定要用Apple HLS协议,那个latency惨不忍睹,有一次去亚特兰大客户家里看问题,我们一起站在门口,把camera装好了,客户在那里数着latency的秒数,真的恨不得找个地缝钻下去,我们其他的方案可以做到2s内,但当时的HLS要到10s(用iOS native 播放)

直到Apple发布了Low latency HLS,我觉得才像个样子,至少适合Live播放了。

Low latency HLS的详细规格可以参考文档即可,这里就粗略的介绍一下结果跟方案。

目前Low Latency HLS优化后,latency大概在0.7s~1s之间,这个结果对于监控领域来说也够用了。

按照Low Latency HLS的规范,每个partial的clip最小200ms,最少要queue3个clip,所以这600ms没跑了,优化的部分就是如何才能让client的latency稳定在这个数值?

1. 有新的连接进来,第一时间trigger encode force IDR

2. 如果发现前一个IDR到现在已经过去了不少时间,那就果断点,m3u8告诉client clip ready(实际上给的是未来的clip name),然后把所有请求的session hold住,等clip 好了第一时间response给client,这样latency就稳住在0.7s~1s.

其他的细节后续再补充把

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值