LL-DASH (Low-Latency DASH)

Protocol

DASH equivalent using chunked transfer encoding to deliver segments as they're encoded. Players can start playback before the segment is complete. Often paired with CMAF low-latency mode.

Updated Apr 3, 2026

Full Explanation

Standard DASH streaming has a fundamental latency problem: the encoder creates a segment (say 6 seconds of video), uploads it to the origin, the CDN caches it, and then the player downloads it. By the time the viewer sees that content, 20-30 seconds have passed since the live event. LL-DASH attacks this by using HTTP chunked transfer encoding to stream segment data to the player as it is being encoded, without waiting for the full segment to finish.

Instead of one 6-second segment as a single file, the encoder produces small chunks (sometimes called CMAF chunks) as small as 500ms. These chunks are pushed to the CDN using chunked transfer encoding on the HTTP response. The player starts an HTTP request for a segment that does not fully exist yet, and the server streams bytes to it as they become available. The player can decode and render those chunks immediately.

This brings glass-to-glass latency down to 2-5 seconds, compared to 20-30 seconds with standard DASH. LL-DASH is often paired with CMAF low-latency chunks (CMAF-CTE) so the same low-latency segments work with LL-HLS too, giving you cross-protocol compatibility from a single encoding pipeline.

The CDN requirement is that edge servers must support chunked transfer encoding properly, forwarding bytes to clients as they arrive from the origin rather than buffering the entire response first. Not all CDNs handle this well. You also need your origin to support HTTP chunked responses, which rules out simple static file servers.

<!-- LL-DASH MPD with availability time offset -->
<SegmentTemplate
  duration="6000"
  availabilityTimeOffset="5.5"
  media="chunk_$Number$.m4s"
  initialization="init.mp4" />
<!-- availabilityTimeOffset tells the player it can
     request the segment 5.5s before it is fully available -->

Examples

A live football match uses LL-DASH with 500ms CMAF chunks inside 6-second segments. The player requests segment 500 while it is still being encoded. The CDN streams chunks to the player as they arrive from the origin. The viewer sees the goal about 3 seconds after it happens, instead of 25 seconds with standard DASH.

Video Explanation

Frequently Asked Questions

DASH equivalent using chunked transfer encoding to deliver segments as they're encoded. Players can start playback before the segment is complete. Often paired with CMAF low-latency mode.

A live football match uses LL-DASH with 500ms CMAF chunks inside 6-second segments. The player requests segment 500 while it is still being encoded. The CDN streams chunks to the player as they arrive from the origin. The viewer sees the goal about 3 seconds after it happens, instead of 25 seconds with standard DASH.