What is HLS?
HLS stands for HTTP Live Streaming. It is a streaming protocol developed by Apple Inc. for delivering live and on-demand video content over the internet. HLS divides video content into small, manageable chunks and delivers them via standard HTTP (Hypertext Transfer Protocol) connections, making it widely compatible with various devices and platforms.
Here's how HLS works:
Content Encoding: The video content is encoded and segmented into small chunks, typically around 10 seconds in duration. These chunks are encoded at different quality levels to accommodate adaptive streaming.
Playlist Generation: HLS creates a playlist file, known as the "master manifest," which contains references to the available video chunks and their corresponding bitrates. The master manifest file is hosted on a web server and made accessible via a URL.
Adaptive Streaming: When a user initiates playback, their streaming client (such as a video player) requests the master manifest file. The client then analyzes the user's network conditions and device capabilities to determine the optimal bitrate version to start playback.
Chunk Delivery: The client requests the video chunks based on the selected bitrate version. These chunks are delivered over HTTP connections, allowing HLS to leverage existing web infrastructure and easily traverse firewalls and proxies.
Bitrate Switching: During playback, the client continuously monitors the network conditions. If the available bandwidth increases or decreases, the client can dynamically switch to a higher or lower bitrate version to ensure smooth playback and optimal video quality.
Encryption and Content Protection: HLS supports encryption using standard protocols like AES (Advanced Encryption Standard). This enables content protection and secure delivery of video streams.
HLS has become a widely adopted streaming protocol due to its compatibility with a range of devices and platforms, including iOS devices, web browsers, smart TVs, and streaming media players. It allows for adaptive streaming, ensuring that viewers receive the best possible video quality based on their network conditions and device capabilities.
Moreover, HLS supports features like closed captions, multiple audio tracks, and subtitle options, making it suitable for a variety of streaming applications, including live events, video-on-demand services, and OTT (over-the-top) media delivery.
While HLS was initially developed by Apple, it has gained broad industry support and is now compatible with both Apple and non-Apple devices, making it one of the most prevalent streaming protocols in use today.
Article written by
Sylvain Corvaisier

Independent streaming and iOS engineer
Last modified: January 15th, 2025