Low‐Latency HLS DASH (LL‐HLS & LL‐DASH) - devrath/MediaAlchemySuite GitHub Wiki
About
- Protocol extensions to reduce end-to-end latency of live streaming to as low as
2–5
seconds.
- Useful for real-time events like auctions, sports, gaming, etc.
🧠 Why Low-Latency?
- Traditional HLS/DASH adds delay due to larger segments and waiting for each segment to be encoded completely before it's delivered to the player for delivery
- Low latency solves this problem using
small segments(Ex: 1s or less)
and grouping them together.
- It also helps in preloading.
📦 LL-HLS / LL-DASH: Segment Delivery Diagram
Traditional HLS/DASH Low-Latency HLS/DASH
(Segment-based Delivery) (Partial Segment Delivery)
Time ▶ ┌──────────────┐ ┌───┐┌───┐┌───┐┌───┐┌───┐
│ Segment #1 │ │P1 ││P2 ││P3 ││P4 ││P5 │
└──────────────┘ └───┘└───┘└───┘└───┘└───┘
┌──────────────┐
│ Segment #2 │ ▶▶▶ Player receives **partial chunks**
└──────────────┘ as soon as they are encoded.
Latency ▶ Higher (~10–30s) Lower (~2–5s)
🔧 LL-HLS Sample Playlist (partial segment)
#EXTM3U
#EXT-X-TARGETDURATION:2
#EXT-X-PART-INF:PART-TARGET=0.333
#EXTINF:2.000,
file123.ts
#EXT-X-PART:DURATION=0.333,URI="file123.part1.ts"
#EXT-X-PART:DURATION=0.333,URI="file123.part2.ts"
🔄 Summary
Feature |
Traditional HLS/DASH |
LL-HLS / LL-DASH |
Segment Duration |
6–10s |
1–2s |
Transfer |
Waits for full segment |
Starts sending partial data immediately |
Latency |
High (10–30s) |
Low (2–5s) |
Use Case |
VOD, non-urgent live |
Sports, eSports, Auctions, News |