Skip to main content
AgoraStream

Streaming Quality · 5 min read

HLS vs. MPEG-DASH: How Adaptive Bitrate Streaming Prevents Stalls

Key Takeaway

HLS (HTTP Live Streaming) and MPEG-DASH split live broadcasts into short 2-to-6-second segments encoded at multiple bitrates. Your streaming device measures download throughput after each segment and seamlessly shifts resolution up or down to avoid rebuffering.

Written by Elena Vance (Lead Streaming Systems Editor)Reviewed by Marcus Chen2 technical sources cited
HLS vs. MPEG-DASH: How Adaptive Bitrate Streaming Prevents Stalls

What happens inside an adaptive bitrate ladder?

When a broadcast feed is ingested, encoders produce parallel video renditions—for example 480p, 720p, 1080p, and 4K HEVC—aligned on exact keyframe boundaries. A manifest file (.m3u8 for HLS, .mpd for MPEG-DASH) lists each rendition and its segment URLs.

If another household device begins a large download and throughput dips, the player fetches the next 4-second segment from a lower rung on the ladder instead of freezing playback.

Which devices prefer HLS versus MPEG-DASH?

Apple tvOS and iOS prioritize HLS with FairPlay Streaming DRM, while Android TV, webOS, and modern desktop browsers handle both MPEG-DASH (Widevine DRM) and CMAF-packaged HLS.

Technical Differences Between HLS and MPEG-DASH

CharacteristicHLS (HTTP Live Streaming)MPEG-DASH
Manifest FormatM3U8 playlist textMPD XML manifest
Common ContainerfMP4 (CMAF) / MPEG-TSFragmented MP4 (CMAF)
Primary DRM PairingApple FairPlay / WidevineWidevine / PlayReady
Native Apple tvOS SupportNative system pipelineRequires custom player

Frequently Asked Questions

Can a single CMAF stream serve both HLS and MPEG-DASH devices?
Yes. Common Media Application Format (CMAF) uses fragmented MP4 media segments that can be referenced by both .m3u8 and .mpd manifests, improving CDN cache efficiency.

Cited Standards & Primary Sources