In this article
After reading, you'll understand:
- What HLS is and why it became the default streaming protocol
- How manifests (.m3u8) and segments (.ts / fMP4) fit together
- How HLS compares to DASH, and where each is used
- What Low-Latency HLS changes for live streaming
What is HLS (HTTP Live Streaming)?
HLS (HTTP Live Streaming) is an adaptive bitrate 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 manifest.
Because segments are delivered over ordinary HTTP, HLS travels through any standard web server, cache and CDN — 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.
The source is transcoded 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.
How Kinescope handles this
Upload a video to Kinescope and HLS is produced automatically: transcoding builds the rendition ladder, the manifests are written for you, and delivery runs through an adaptive video player and a global CDN across 48+ countries. HLS is the primary delivery protocol for both video hosting and live streaming — no configuration required.
Read the Kinescope docsHLS vs. DASH
HLS and DASH are the two dominant adaptive streaming protocols. They solve the same problem in similar ways; the differences are mostly about origin, device support, and DRM.
| 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 latency — 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 streaming runs at roughly 5–10 seconds of signal delay, with LL-HLS available for lower-latency, interactive broadcasts such as webinars and Q&As.
Frequently asked questions
What is the difference between HLS and MP4?
An MP4 is a single self-contained file downloaded (or progressively streamed) at one fixed quality. HLS instead splits the video into many short segments across several quality renditions and lets the player switch between them mid-playback based on bandwidth. MP4 is fine for a small download; HLS is what streaming platforms use for smooth adaptive delivery at scale.
What is an .m3u8 file?
An .m3u8 is the HLS manifest (playlist) — a small text file that lists the available quality renditions and the URLs of each video segment. The player downloads it first to learn what qualities exist, then requests segments accordingly. A master .m3u8 points to per-rendition media playlists.
Is HLS the same as adaptive bitrate?
They are related but not identical. Adaptive Bitrate (ABR) is the concept of switching quality to match bandwidth; HLS is one of the transport protocols (alongside DASH) that carries an ABR stream. HLS delivers ABR using .m3u8 manifests and segmented media.
Does HLS support DRM?
Yes. HLS supports encryption and DRM — Apple FairPlay is the native DRM for HLS, and platforms often pair it with Widevine (usually via DASH) to cover every device. On Kinescope, DRM protection is available on paid plans without any separate configuration.
How much latency does HLS add?
Standard HLS typically adds 10–30 seconds of latency, which is fine for on-demand video but noticeable for live. Low-Latency HLS (LL-HLS) reduces this to a few seconds using partial segments and server push, making interactive live like webinars and Q&As feel real-time.
Do I need to create HLS files myself?
No, if you use a hosting platform. Kinescope transcodes every upload into the full HLS rendition ladder, writes the manifests, and serves them through its own CDN automatically — you embed a player and HLS delivery happens behind the scenes.
Further reading
- Apple — HTTP Live Streaming (HLS) — the official specification and developer resources.
- HTTP Live Streaming — Wikipedia — a vendor-neutral overview.
