Global Brand, Local Voices: A Practical Guide
Streaming Protocols

Video Streaming Protocols: HLS, DASH & CMAF Explained

Compare HLS, DASH, and CMAF: how HTTP adaptive streaming works, how each handles latency and DRM, and how Videospan uses them to deliver video at scale.

A streaming protocol defines how video is chopped into pieces, described to the player, and delivered over the network. Nearly all modern video delivery uses HTTP adaptive bitrate (ABR) streaming: instead of one monolithic file, the source is encoded into multiple quality levels and split into short segments, and the player downloads whichever quality fits its current bandwidth.

This architecture is what lets a single stream serve a phone on hotel Wi-Fi and a 4K TV on fiber at the same time—and it's why the three technologies in this section exist. It isn't an academic interest for us, either: every video Videospan renders, from an executive's long-form recording to a 15-second repurposed clip, reaches its audience through HTTP adaptive streaming. The choices documented here are the ones our delivery stack makes every day.

How HTTP adaptive streaming works

Every ABR system follows the same pattern:

  1. Encode the source into several renditions (for example 240p through 4K).
  2. Segment each rendition into short chunks of 2–6 seconds.
  3. Publish a manifest that lists the renditions and the URL of every segment.
  4. The player fetches the manifest, estimates available bandwidth, and downloads segments one at a time—switching quality up or down as conditions change.

Because segments are plain HTTP objects, they cache on CDNs exactly like images or JavaScript. That property, more than anything else, is why ABR streaming scales to millions of concurrent viewers.

player360p800 kbpsrendition 1480p1.4 Mbpsrendition 2720p2.8 Mbpsrendition 31080p5 Mbpsrendition 44K16 Mbpsrendition 5

How Videospan uses streaming protocols

Every finished video in Videospan—whether it's a branded executive recording, an AI-assisted edit, or a repurposed short clip—is packaged for adaptive delivery. Our rendering pipeline outputs each title in multiple aspect ratios and variants, and each variant is encoded into a multi-rendition bitrate ladder, segmented, and published with HLS and DASH manifests over shared segments. A few principles from the technologies in this section shape how that works:

  • Reach without installs. HLS and DASH play in every modern browser and on every device your teams already own, so a video shared with a global workforce never requires a plugin or a specific app.
  • One encode, every screen. CMAF segments let a single packaged asset serve iPhones, Androids, and smart TVs, with the CDN caching each segment once.
  • Bandwidth-adaptive by default. A viewer on a weak connection and a viewer on office fiber get the same video at the best quality their link can sustain—the player switches renditions automatically.
  • Low latency when it matters. The low-latency modes of these same standards keep time-sensitive communications—town halls, launches—within a few seconds of real time.

Because segments are plain HTTP objects, delivery scales on ordinary CDN infrastructure rather than specialized streaming servers—which is how a single published video can reach an entire global organization at once.

HLS vs DASH vs CMAF at a glance

HLSMPEG-DASHCMAF
TypeStreaming protocolStreaming protocolSegment format (not a protocol)
StandardApple, 2009 (RFC 8216)ISO/IEC 23009-1, 2012ISO/IEC 23000-19, 2016
Manifest.m3u8 playlist (text)MPD (XML)Uses HLS or DASH manifests
Typical latency6–30s classic; ~2–3s with LL-HLS6–30s classic; ~2–4s low-latency modeEnables ~2–4s via chunked transfer
Segment formatMPEG-TS or fMP4fMP4 (codec-agnostic)Fragmented MP4 with CMF chunks
Native supportSafari, iOS, virtually everythingAndroid, Chrome, smart TVs; no native SafariSupported wherever HLS/DASH are
DRMFairPlay, Widevine, PlayReadyWidevine, PlayReady, CENCWidevine, PlayReady, FairPlay (cbcs)
LicensingFree to implementFree to implementFree to implement

HLS (HTTP Live Streaming)

HLS is Apple's streaming protocol, introduced in 2009 and now the closest thing video has to a universal default. It uses text-based .m3u8 playlists to describe renditions and segments, originally delivered as MPEG-TS and today often as fragmented MP4. If you need one stream that plays on every iPhone, browser, and smart TV on earth, HLS is where you start—and LL-HLS brings its latency down to a few seconds for live use.

MPEG-DASH

MPEG-DASH is the vendor-neutral answer to HLS: an ISO standard published in 2012 that describes streams with an XML manifest called an MPD. It's codec-agnostic by design, dominates on Android, Chrome, and smart TVs, and is the natural fit for Widevine and PlayReady DRM. Its historical weakness is the lack of native Safari support, which is why most services ship HLS and DASH side by side.

CMAF (Common Media Application Format)

CMAF is not a protocol—it's a shared segment format. Created by Apple and Microsoft in 2016, CMAF defines a single set of fragmented MP4 segments (broken into small CMF chunks) that both HLS and DASH manifests can reference. Encode once, serve both protocols, and—thanks to chunked transfer encoding—deliver low-latency streams of two to four seconds without a proprietary stack.

Glossary

ABRAdaptive Bitrate

A delivery technique where the player switches between multiple encoded quality levels in real time based on measured bandwidth and buffer health.

ManifestPlaylist / MPD

The text or XML document that lists a stream's renditions and segment URLs. HLS uses .m3u8 playlists; DASH uses an MPD.

Segment

A short, independently downloadable piece of a stream—typically 2 to 6 seconds of audio and video.

RenditionVariant / Representation

One encoded version of the same content at a specific resolution and bitrate. The set of renditions forms the bitrate ladder.

LatencyGlass-to-glass latency

The delay between something happening in front of the camera and a viewer seeing it on screen.

CDNContent Delivery Network

A globally distributed cache layer that serves segments from edge locations close to viewers, which is what makes ABR streaming scale.