‘Streaming’ is technically attributed to delivering a steady flow of data packets in the form of video and audio over a delivery network to the users’ playback device. Broadcasters and content distributors from different domains and industries usually relied on the commonly used RTMP and RTSP protocols when delivering on-demand data to their viewers. However, with HLS or HTTP live streaming protocols, broadcasters can now deliver high quality and low-latency video streaming for their users in a more faster and reliable form than its industry predecessor i.e. RTMP and RTSP protocols.
Developed by Apple Inc. in 2009, HLS enabled broadcasters to deliver content to the masses owing to its ease of compatibility with most modern day devices like smartphones, gaming consoles, connected TVs and computers. It allowed broadcasters to deliver files from the hosting platforms to the viewer’s device directly, rather than rerouting it through the encoder as was the case with RTMP.
Why should one opt for HLS Streaming?
HLS or HTTP live streaming protocol transports video and audio data from the media servers to the viewer’s device directly across multiple screens with minimal lag/latency. With adaptive bitrate streaming, HLS also allows broadcasters to deliver optimized content including live and on-demand streaming content to a wide range of customers independent of their bandwidth conditions and playback device capabilities. Owing to progressive downloading and adaptive bitrate, viewers get a smooth lag free viewing experience across their devices.With such significant advantages over other streaming protocols, HTTP live streaming or HLS streaming is an extensively used video streaming protocol by professional broadcasters.
How does HLS work?
HLS video streams are segregated into chunks or packets of data after encoding multiple files at different data rates. These data packets are then loaded onto aHTTP server along with its .M3U8 extension that instructs the player to recombine the files for each encoded stream in a particular manner. It doesn’t require a streaming server as the player can monitor changing bandwidth conditions.
Codecs is a coinage or portmanteau term for coder/decoder software, that is used for compressing and decompressing data files to help in transport over delivery networks. An encoder then compresses data while the decoder decodes it before playing it on the viewer’s device.
The low-latency HLS extension was designed by Apple to bring down the latency even further. The existing protocol relied on HTTP/2PUSH delivery which was later removed and the low-latency HLS extension was incorporated into the traditional HLS as a feature set. As a result, the latency was further reduced and helped in delivering a seamless viewing experience.
Workflow – RTMP to HLS
The camera captures the stream, gets encoded, passes through RTMP via the media server and to HLS, then distributed to multiple media players. As HLS significantly pushes latency lower, many content distributors are opting to encode their streaming content using Real-time Messaging Protocol (RTMP) and then repackage it for HLS delivery once it reaches the media server.
HLS Streaming – Snapshot of Technicalities
You may have a basic overview of HLS and how it works; now let’s dig into the basic details about encoding to segment size.
Latency: The low latency HLSextension is now incorporated as a feature set of HLS, which promises comparatively low latency.
Playback support: supports all browsers, set-top boxes, smart TVs, and other players.
Video Codecs: H.265, H.264
Audio Codecs: HE-AAC+v1, v2,xHE-AAC,AAC-LC, FLAC
Devices and Browsers that support HLS
since limited to iOS devices, HLS is now supported by multiple devices and browsers.
Here is the list:
- All Google chrome browsers
- Microsoft Edge
- iOS devices
- Android Devices
- Linux and Microsoft devices
- MacOS platforms
Advantages of HLS streaming:
Using HLS streaming protocol, content distributors are able to make use of global content delivery networks (CDN) in delivering great viewing experiences across the world. Though it bloomed out of Apple meant for its Quicktime, iOS and safari browser, it was quickly adopted and implemented seamlessly across browsers.
Adaptive bitrate streaming:
Suppose you are expecting to deliver high-quality streaming to every user, including those with small screens and poor connections. HLS streaming dynamically adapts the display resolution for all users based on their network speed and device compatibility. This is called ‘Adaptive bitrate streaming – Instead of creating one live stream at one bitrate, a transcoder from the media server creates multiple streams at different bitrates and resolutions, allowing broadcasters to deliver high-quality streams to users with any type of available bandwidth.
Delivery and Scaling:
HLS can be quickly scaled for delivery using ordinary web servers across the global Content Delivery Network (CDN). It shares the workload across the HTTP server networks, and CDNs accommodate the viral viewership spikes, which are more significant than expected live audiences. It improves the overall viewing experience by caching audio and video segments and delivering a high-quality video streaming experience.
Now let’s come to some of the Cons of HLS Streaming:
As we all know, every new technology comes with its own set of pros and cons. However, in comparison to pros, HLS streaming protocol has very few drawbacks:
- Since live streaming is dependent on high packet transfers of data between the server to network and then network to user’s device, it limits the protocol’s capabilities with key frame intervals, buffer requirements, and packet sizes resulting in latency, this was however resolved with low-latency update from Apple in 2019.
- It pushes your stream back, a delay of which is a significant setback in rapid and high-speed live streaming events. This is usually not a problem as most users ignore the small latency of HLS stream as it will not impact their overall experience.
HLS is an omnipresent technology protocol in the streaming industry supported by various browsers, devices and OS, making it an ideal choice when broadcasters need to deliver their streaming content to a large set of viewers.
We are hopeful that you found this article helpful in sharing the basic knowledge on HLS streaming protocol.
You can use HLS streaming on Muvi Live to transcode and deliver streams via our fully managed services. You can start your first HLS live stream today with our video streaming solution and reach out to a wide range of audience. If you feel the need to integrate HLS in your streaming channels, try out our free 14-day trial.