HLS (HTTP Live Streaming)
The adaptive streaming protocol that carries video to virtually every browser, phone and smart TV — using short segments and a small playlist file.
HLS chops a video into short segments at several qualities and describes them in a tiny .m3u8 playlist — the near-universal way streaming reaches every browser, phone and TV.
What is HLS (HTTP Live Streaming)?
HLS (HTTP Live Streaming) is an adaptive bitrateAdaptive Bitrate (ABR)Automatically adjusts video quality in real time to match each viewer’s connection speed — smooth playback from 480p to 4K with no buffering.Open definition → streaming protocol developed by Apple. Instead of sending one large video file, HLS breaks the video into a series of short segments — typically 2–6 seconds each — encoded at several quality levels, and describes them in a small playlist file called a manifestManifestA small index file (.m3u8 or .mpd) that lists every available rendition and segment so the player knows what it can request.Open definition →.
Because segments are delivered over ordinary HTTP, HLS travels through any standard web server, cache and CDNCDN (Content Delivery Network)A global network of edge servers that caches video close to viewers, cutting latency and absorbing traffic spikes.Open definition → — no special streaming server required. That simplicity is why HLS became the most widely supported streaming protocol in the world: it plays natively on Safari, iOS, Android, and every major smart-TV platform, and through JavaScript players like hls.js everywhere else.
Originally built for live streaming, HLS is now used for both live and on-demand video across the industry — from short marketing clips to full live broadcasts.
How HLS works
An HLS stream has two moving parts: manifests that describe the stream, and media segments that carry the actual video. It rides the same pipeline every adaptive stream does:
The Kinescope video pipeline
Following the stream from source to screen:
The source is transcodedTranscodingRe-encoding a source video into multiple resolutions and bitrates so a player can switch between quality levels on the fly.Open definition → into several resolutions and bitrates — for example 1080p, 720p, 480p and 360p — so the player has quality options to switch between.
Every rendition is cut into short chunks. Historically these were MPEG-TS .ts files; modern HLS also supports fragmented MP4 (fMP4), which lets HLS and DASH share the same media.
A master playlist (.m3u8) lists the available renditions; each rendition has its own media playlist listing its segment URLs in order. The player fetches the master first.
The player measures throughput as it downloads segments and requests the next segment from whichever rendition best fits the connection — switching quality invisibly, segment by segment.
HLS vs. DASH
HLS and DASHDASHDynamic Adaptive Streaming over HTTP — an open ISO standard using .mpd manifests, common for DRM-protected premium content.Open definition → are the two dominant adaptive streaming protocols. They solve the same problem in similar ways; the differences are mostly about origin, device support, and DRMDRMEncryption of the video file plus a licence server that issues a per-session key — so a downloaded copy stays unplayable.Open definition →.
| Aspect | HLS | DASH |
|---|---|---|
| Created by | Apple | MPEG (open ISO standard) |
| Manifest | .m3u8 | .mpd |
| Segments | .ts or fMP4 | fMP4 |
| Device support | Universal, native on Apple | Broad, but not native on Apple |
| Native DRM | FairPlay | Widevine / PlayReady |
| Typical use | Default for most delivery | DRM-heavy premium content |
Most platforms serve both from the same fMP4 media to cover every device and DRM system. Kinescope offers HLS as its primary protocol, with DASH available for DRM-protected playback.
Low-Latency HLS (LL-HLS)
Standard HLS introduces roughly 10–30 seconds of latencyLatencyThe delay between a moment happening and a viewer seeing it. Critical for live — Low-Latency HLS brings it down to 2–5 seconds.Open definition → — acceptable for on-demand, but too much for interactive live. Low-Latency HLS (LL-HLS), an official Apple extension, cuts the delay to a few seconds using partial segments and server push, so the player can start rendering a chunk before it is fully written.
Kinescope's live streamingLive streamReal-time video delivered as it is captured, transcoded and segmented on the fly — webinars, events, broadcasts.Open definition → runs at roughly 5–10 seconds of signal delay, with LL-HLS available for lower-latency, interactive broadcasts such as webinars and Q&As.
Further reading
- Apple — HTTP Live Streaming (HLS) — the official specification and developer resources.
- HTTP Live Streaming — Wikipedia — a vendor-neutral overview.
