HLS — HTTP Live Streaming — is Apple's adaptive streaming protocol and one of the two dominant standards in modern video delivery (alongside dash). Created by Apple in 2009 to power the original iPhone, HLS chops video into short segments (typically 2–10 seconds each), publishes a .m3u8 playlist listing the segments at multiple bitrates, and lets the player switch between bitrates as the network changes. The protocol is built on plain HTTP, which means it works through firewalls and CDNs without special infrastructure.

The reason HLS matters beyond Apple is mandatory iOS support. iPhones, iPads, Apple TVs and Safari can only play streaming video via HLS — Apple doesn't permit DASH or any other adaptive protocol in their ecosystem. So any service that wants to reach iPhone users (most of premium streaming subscribers in many markets) must ship HLS. Historically HLS used MPEG-TS segments, which made it incompatible with DASH's fragmented MP4 — but the 2017 adoption of CMAF + fMP4 in HLS unified the two protocols at the segment level, allowing one encoded set of files to serve both.

For a product team in 2026, HLS is half of the universal streaming recipe: encode once, package as CMAF, expose via both an HLS .m3u8 playlist (for Apple devices) and a DASH MPD manifest (for everything else), serve identical fMP4 segments from your CDN to both. Apple has continued evolving HLS with low-latency extensions (LL-HLS, 2019) and improved encryption profiles. The encoding-side details — segment length, keyframe alignment, manifest structure — are mostly handled automatically by modern packagers (Shaka Packager, AWS MediaPackage, Bitmovin). For the encoding/decoding KB, HLS is mostly relevant as the receiving end of the encoder pipeline; the Streaming KB will cover HLS operations in depth.