HLS (HTTP Live Streaming) - CBA Glossary
πŸ“– Glossary

HLS (HTTP Live Streaming)

HLS is an adaptive streaming protocol where video is divided into small segments (typically 2-10 seconds), and a playlist file tells players where to find segments at various quality levels. Players request segments sequentially, adapting quality based on network conditions. HLS is the standard for streaming to web browsers and mobile devices globally.

HLS works through HTTP, the same protocol web browsers use. This means HLS can work through any internet infrastructure without special ports or protocolsβ€”it works through corporate firewalls, cellular networks, and any network allowing HTTPS traffic. This ubiquity is why HLS dominates streaming.

The mechanics: your encoder produces multiple bitrate versions of the stream (1080p, 720p, 480p, etc.), breaking each bitrate into segments and writing them to a web server. The encoder also generates a playlist file (m3u8) listing all available segments. A player downloads the playlist, examines available segments and quality options, requests segments at appropriate quality, and decodes them sequentially.

At Creative Broadcast Agency, HLS is our default for event streaming, corporate streaming, and webinars. For most audiences, HLS provides the right balance of quality, compatibility, latency, and reliability.

Latency with HLS depends on segment length. 2-second segments give roughly 6-8 seconds glass-to-glass latency (segments must be complete before playback). Smaller segments reduce latency but increase encoder complexity and playback instability. LLHLS (Low-Latency HLS) with 1-second segments or partial segment transmission achieves 2-4 second latency.

HLS has disadvantages: live content is cut into segments, meaning seeking live stream shows you jumping between segments (you can't smoothly pause/resume live content). Bitrate switches can cause quality dips. Buffering strategies differ across players, creating inconsistent experiences.

For esports broadcasts, where latency matters and viewers expect smooth playback, we often augment HLS with SRT contribution feeds and sometimes LLHLS output for primary audiences while maintaining standard HLS for broader compatibility.

FAQ
Why is HLS slower than RTMP?
+
HLS is segmentedβ€”each segment must be encoded and written to storage before playback can begin. This inherent segmentation creates latency. RTMP streams data continuously without waiting for segment completion, achieving lower latency. The trade-off: HLS works everywhere (through firewalls), RTMP requires open ports and special streaming infrastructure.
Can we stream to multiple platforms simultaneously using HLS?
+
Not exactly. HLS is typically streamed to a CDN or hosting platform (YouTube, Twitch, your website) rather than directly distributed. You might stream via SRT contribution to YouTube, which converts to HLS for delivery. Or you use a service that accepts HLS and re-delivers via other formats.
Do all devices support HLS?
+
Modern devices do (iOS, Android, modern web browsers, smart TVs). Older devices might require specific player software. For broadest compatibility, HLS is the standard choice. For specialized requirements (WebRTC for sub-second latency, DASH for specific clients), alternatives exist.
How do we decide segment length for HLS?
+
Balance between latency and stability. 10-second segments give 20-30 second total latency but are stable. 2-second segments give 6-8 second latency but require more reliable encoding and delivery. For corporate events, 10-second segments are fine. For esports, 2-3 second segments are standard.

Need help with hls (http live streaming)?

Book a Discovery Call