Protocols and Formats [EN]

Protocols and Formats [EN]


Protocols

HLS (HTTP Live Streaming) and MPEG-DASH (Dynamic Adaptive Streaming over HTTP (DASH)) are adaptive bitrate streaming protocols used for internet video delivery. They both split video into small segments and provide lists of available segments and quality, leveraging segmented delivery and adaptive bitrate for the best streaming experience.

Based on the provided lists, your viewer's player continuously downloads segments, showing an uninterrupted stream. The viewer's media player switches between different quality segments based on network conditions and configuration, which enables smooth playback of your stream.


Format and Standardization

HLS

HLS was originally tied to Apple ecosystems, but is now widely supported and offers maximum compatibility across devices

  • Native support on iOS, macOS, Safari

  • Playlist Format: .m3u8 (text-based playlist)

  • Chunk Formats: .ts (MPEG-2 Transport Stream) and .m4s (fMP4)

  • Codecs and Containers: More constrained (supports fMP4 and multiple codecs)

  • Latency and Extensions: Supports Low-Latency HLS (LL-HLS) as an extension

MPEG-DASH

MPEG-DASH is an open international standard (MPEG), common for standards-based and DRM-heavy environments

  • Widely used on web platforms via HTML5 players

  • Playlist Format: .mpd (XML-based playlist)

  • Chunk Formats: .mp4 or .webm

  • Codecs and Containers: More flexible, supports a wider range of codecs and containers

  • Latency and Extensions: Supports low-latency modes via CMAF


Playlists and Chunks

Type

HLS

MPEG-DASH

Type

HLS

MPEG-DASH

Playlist (Manifest)

.m3u8

.mpd

Chunk (Segment)

.ts, .m4s

.mp4, .webm

Playlists (manifests) change frequently and must be refreshed often to include new segments or bitrate options.

Chunks (segments) mostly stay the same once generated and can be cached for longer.