This document outlines improvements to low-latency HTTP Live Streaming (LL-HLS). It discusses adopting ad insertion, reducing latency through blocking playlist reloads, preload hints, playlist delta updates, and audio experience optimizations. LL-HLS aims to deliver content with minimal delay by simplifying delivery directives, generating CMAF formats, and preloading segments before playback is needed. Blocking playlist reloads allow clients to wait for new segments rather than polling frequently. Playlist delta updates send only changes to reduce bandwidth. These changes bring LL-HLS out of beta status.
8. Important changes
● Replaced HTTP/2 Push with Preloading Hinting
● Simplified Delivery Directives
● Generate CMAF in reference tools
Everything is included in the current HLS spec
Low-Latency HLS comes out of beta this year
● Aim to deliver your service
38. What’s Blocking Playlist Reload?
● HLS clients discover new segments by reloading the Playlist
● Original HLS approach (polling) delays discovery
39. What’s Blocking Playlist Reload?
● HLS clients discover new segments by reloading the Playlist
● Original HLS approach (polling) delays discovery
● Low-Latency HLS introduced server Delivery Directives
40. ● HLS clients discover new segments by reloading the Playlist
● Original HLS approach (polling) delays discovery
● Low-Latency HLS introduced server Delivery Directives
● Client asks server to hold reload request until new segment appear
● Response unblocks when Playlist updates
What’s Blocking Playlist Reload?
64. Other exceptional cases
● _HLS_msn and _HLS_part are ignored if Playlists contains EXT-X-ENDLIST
● Server unblocks immediately if Playlist is newer than requested
● Requested segment/part is not the most recent
○ It might even have rolled out of the Playlist
65. ● _HLS_msn and _HLS_part are ignored if Playlists contains EXT-X-ENDLIST
● Server unblocks immediately if Playlist is newer than requested
● Requested segment/part is not the most recent
○ It might even have rolled out of the Playlist
● Server may time out if it spends too long blocked
Other exceptional cases
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79. Using CMAF Chunks with LL-HLS
● Each resource (URL) corresponds to a Parent Segment
● Each Parent Segment contains multiple CMAF Chunks
● Each CMAF Chunk is a Partial Segment
○ Specified as Parent Segment URL + byte-range
100. Wrap up
● Provide Playlist Delta Updates for livestreams with large windows
● Latest OS offers v2 updates that include EXT-X-DATERANGE tags
● Improves Playlist reload performance, which increases reliability