6628490eb6fde6e7e71d48dd458308a4
WWDC20 10228 - 低延迟 HLS 新特性

本文基于 Session 10228 - What's New in Low-Latency HLS

前言

HTTP Live Streaming(也称为 HLS)是苹果推出的一套基于 HTTP 的流媒体直播技术。HLS 简单、易扩展,且支持动态码率和 CDN 缓存,是非常理想的一对多直播协议,但 HLS 最大的痛点在于其延迟较高,通常有 10 - 30 秒的延迟。

WWDC19 中,苹果介绍了一种低延迟 HLS 技术(Low-Latency HLS,下面简称 LL-HLS),通过 Partial Segment、优化发现机制、Playlist 增量更新等改进,把 HLS 的延迟降低到了最低仅有 2 秒左右。

LL-HLS 在去年一直处于 Beta 阶段,而今年 LL-HLS 终于正式发布,不仅会在 iOS 14 等新系统上全面支持,LL-HLS 相关的内容也加入 HLS RFC 文档(draft-pantos-hls-rfc8216bis-07)。

今年的 WWDC 上,苹果为我们带来了一系列关于 LL-HLS 的更新和改进,本 Session 将会对 LL-HLS 的新内容做一次概览。

Low-Latency HLS 正式发布

  • 在 iOS 14、tvOS 14、watchOS 7 和 macOS 平台上全面支持
  • 拥有多比特率切换、内容安全、CMAF、广告插入、捕捉等特性,同时支持所有的 HLS 原生特性。
  • 在所有原生应用上支持。

LL-HLS加入 HLS 规范

RFC 文档更新

最新版本文档参考 draft-pantos-hls-rfc8216bis-7

HLS 在 ietf.org 的文档 现在已包含所有 LL-HLS 相关特性,其中需要值得关注的两个点为:

  • LL Server Cnfiguration Profile
  • CDN tune-in 算法

苹果官方文档更新

原本标记为 Beta 版本的相关文档现已正式发布:

针对一些反馈问题的改进

LL-HLS 的测试阶段收到了很多开发者使用的反馈,在本次 LL-HLS 的更新中,苹果针对部分反馈做了相关的一些优化。

减少数据延迟

HTTP/2 推送的兼容问题

HTTP/2 推送特性不能完全兼容所有的传递模型(例如一些广告内容)。

使用 Blocking Preload Hints 代替 HTTP/2 推送

top Created with Sketch.