This blog focuses on HLS, or HTTP Live Streaming, which is one of the most popular protocols used to stream video today. HLS is an adaptive bitrate live streaming video protocol. Originally developed by Apple for use on iOS, Mac OS, and Apple TV devices, HLS has become the most widely used live streaming protocol.
This article is going to take a look at the pros and cons of HTTP Live Streaming. We’ll compare it to a few alternative formats as well. We’ll also look at the history of HLS, and ask where it came from, and why.
How HTTP Live Streaming (HLS) works
HLS video is delivered via the HTML5 web communication protocol, the latest online standard for web content. HTML5 supports online video delivered via a variety of protocols. These include HTTP Live Streaming (HLS) and MPEG-DASH.
You can think of the streaming protocol as the method that defines what format the video uses, how it’s compressed, the size of the chunks sent, and so on.
HLS was developed to provide an alternative to Flash video. Technically speaking, HLS uses h.264 video compression, AAC or MP3 for audio compression, and transmits streams using the MPEG-TS container format.
Video streaming via HLS works by chopping a MP4 video stream into short, ~10 second video chunks. Streams are described using M3U8 playlists that are created by the HTTP server. This playlist, also called a manifest file, indexes the video chunks. Learn more about how this works here.
Pros of using the HLS protocol
Over the past few years, HLS has become a standard protocol for web video, and with good reason. HLS is pretty simple to set up, it’s free to use, and it’s supported on a wide range of devices. Let’s take a look at some of the pros of using the HLMS protocol for video streaming.
Pro #1. All-device delivery
First, HTTP Live Streaming supports video on just about every device. Although it was originally created for use on Safari and iOS devices, HLS is now supported on every modern web browser—mobile, desktop, tablet, etc.
Whether you and your viewers are accessing content on a smartphone, tablet, desktop or laptop, smart TV, set-top box, or any other device, HLS video will play. A majority of web browsers also support the leading alternative—MPEG-DASH—but iOS and Safari don’t. That’s a major advantage. For this reason, HLS remains the de facto standard.
Pro #2. Excellent quality
HLS uses a method called Adaptive Bitrate Delivery. This method measures the internet speed available to each viewer of a given video. Then, the video quality they are being served is adjusted dynamically.
For example, you may begin watching a video at home, where you have a fast Wi-Fi connection. Then, you may leave home and get in a car with a friend, and continue watching the video with a mobile connection. This internet may be slower. You may also pass through areas of limited bandwidth availability. Even a dedicated home or work internet connection can have significant variation in internet speeds.
Video delivered using HLS, if configured properly, will dynamically provide you with the best possible video quality while minimizing buffering and lagging. This approach leads to a superior user experience. The video will attempt to continue playing as much as possible. Quality will scale up as long as your internet is fast enough to handle the load.
Pro #3. Cost efficient
Another major advantage of HLS is lower cost. As we’ve said, the format is supported by just about every device via HTML5 and Media Source Extensions. There’s no need to use a specific device to watch the content. Standard web servers can handle HLS delivery with no problem (depending on load and other factors).
Pro #4. Security
The final benefit of HLS that we’ll highlight here is security. Compared to Flash, HLS simply provides a more secure browser for your viewers—both when they’re watching your content, as well as afterwards.
Cons of using the HTTP Live Streaming protocol
No protocol or technology is perfect, and HTTP Live Streaming is no different. There are a few cons to using HLS. Let’s take a look at one of the most prevalent issues: latency.
Latency refers to the elapsed time between when an event occurs in the real world, and when viewers can see it. Essentially, it’s the time that it takes for video to be recorded by a camera, processed by an encoder, transmitted across the internet, distributed to “edge” servers, and decoded for viewing.[Note that latency doesn’t account for slowdowns due to internet speed and bottlenecks; these are largely separate issues.]
HLS was designed to maximize quality, not to minimize absolute latency. Its key frame interval, packet size, and playback buffer requirement simply aren’t suitable for super-rapid live streaming. Therefore, it usually adds a delay of 20-60 seconds to your stream.
This usually is only a problem for a small subset of live streamers—notably, video gamers and sports fans. In these situations, speed is important. However, most users can easily ignore the small latency of an HLS stream as it will have no impact on viewer satisfaction or experience. For almost all viewers, a high-quality video that is watchable anytime, on any device, is more important than latency.
Solutions to the latency problem
Flash video provided low-latency live streaming. But with the decline of Flash, internet video is in a transition period. There aren’t any fantastic solutions to the HLS latency issue yet. But many different businesses are working on it (including our CDN partner, Akamai). Replacements for HLS are in the works (such as fragmented MP4), but devices aren’t yet ready to play them. That next shift may still be a few years out.
Here at DaCast, we’re offering a low-latency HLS streaming solution for our Premium plans and above. This solution lowers latency to the range of 10 seconds or less. It meets modern browser security standards via HTTPS delivery, and still allow you to reach all mobile devices.
HLS is a powerful technology that’s become one of the industry standards. Hopefully this article has educated you on the basics of this technology, how it works, and what its upsides and downsides are. Any questions about HLS? Let us know in the comments! We love to hear from our readers!
Thanks for tuning in, and good luck with your live streams!