Considering the fact that video consumption is supposed to cross 60,889 PB per month by 2022, delivering low latency live video and on-demand streaming has become the need of the hour. But, the question is – which streaming protocol – MPEG-DASH or HLS can deliver the best QoE to end-users? Well, you have to read this blog to find out. We will help you decide on choosing the most effective streaming protocol- HLS vs MPEG-DASH, to churn out superior quality videos.
What are Streaming Protocols?
A streaming protocol is a standardized format for delivering multimedia content, either audio or video over the internet. Streaming protocols are used to deliver data every time you watch a live stream or video-on-demand content over the internet.
Simply put, a streaming protocol defines the way for sending content “chunks” from one device to another and reassembling them into playable content on the other user’s device.
For playing a video, it is imperative that both the output device and the player has to support the streaming protocol, failure to which the video will not be able to stream. For example, if you are sending a video stream in HLS, and the video player on the user’s device doesn’t support HLS, your stream won’t work.
This is the reason why standardization is important and currently, the two major video streaming protocols are HLS and MPEG-DASH.
The Evolution of Streaming Standards
Video streaming services require a method of delivery for their video content.
In the past, online video was delivered primarily via RTMP. It was originally developed by Macromedia (now known as Adobe) for high-performance transmission of audio, video, and data over the Internet between Flash-based platform technologies, including Flash Player and Adobe AIR and the Server. Although RTMP is still used today, it is not a popular streaming protocol as the Flash plugin has been depreciated over the years.
As a result of the declining status of RTMP, other alternative protocols were developed out of which HLS and MPEG-DASH stand as the most widely supported and popular streaming standards.
What is HLS?
Developed by Apple, HLS is a protocol for streaming live video content over the internet. HLS is short for HTTP Live Streaming.
Initially, HLS was only supported by iOS. However, HLS has now become a proprietary format and almost every device supports it. As the name suggests, HLS protocol delivers video content via standard HTTP web servers. This means that you don’t have to integrate any special infrastructure to deliver HLS content.
Some characteristics of HLS:
- HLS will play video encoded with the H.264 or HEVC/H.265 codecs.
- HLS will play audio encoded with the AAC or MP3 codecs.
- HLS video stream is chopped up into 10-second segments.
- The transport/package format of HLS is MPEG-2 TS
- Supports embedded closed captions
- DRM support
- Supports various advertising standards like VAST and VPAID
- iOS, Android, Linux, Microsoft and macOS devices
- Chrome, Safari, Firefox, and Edge web browsers
- Various set-top boxes like Roku, smart TVs
What’s HLS’ take on Adaptive Streaming?
HLS is an adaptive bitrate streaming protocol. Therefore, HLS streaming dynamically adapts the video resolution to each individual’s network conditions. So, if you are using your home WiFi, you can stream an HD video on your mobile. However, if you are commuting on a bus or metro with limited data connection, you can watch the same HD video in a lower resolution. All of this happens automatically with HLS.
What is MPEG-DASH?
MPEG-DASH is the latest and by far, the best competitor of HLS. Created by Moving Picture Experts Group between 2009 and 2012, it uses standard HTTP web servers like HLS. DASH is short for Dynamic Adaptive Streaming over HTTP which means that like HLS, it’s an adaptive bitrate protocol. This means that DASH can automatically detect your internet speed and deliver the most compatible video resolution at the given moment.
Some characteristics of MPEG DASH:
- DASH is codec agnostic and supports almost every video codec available including H.264, H.265/HEVC, VP9/10 and WebM
- Supports all kinds of audio codecs including AAC and MP3
- DRM support
- Transport/package format of MPEG DASH is MP4 fragments and MPEG-2 TS
- Native support on Android devices
- Playback support on LG, Samsung, Panasonic, Philips, and Sony TVs
- Playback on Chromecast
- Supported on Netflix and YouTube
Pitting HLS against MPEG-DASH
While both MPEG-DASH and HLS have their own set of merits and demerits, they work perfectly in their respective streaming ecosystems. So, how do you decide on the most appropriate protocol for your next video content? While both are dominant streaming protocols in today’s market, here are some important parameters to help you decide.
Which is more widely supported – HLS or MPEG-DASH?
Although HLS and DASH are two rival formats for delivering video streams over the web, HLS is more widely supported than MPEG-DASH. It stands as the most dominant streaming format in 2018.
HLS is compatible with Android, iOS, Windows, Mac, Linux, Chrome OS, or other modern devices. HLS is also compatible with smart TVs, set-top boxes and gaming consoles.
MPEG-DASH however, is not supported on the Safari browser. This is a major disadvantage because most iPhone, iPad, AppleTV, and macOS users stick with the in-built Safari browser.
HLS and MPEG-DASH: Which Streaming Protocol offers Better Streaming Quality?
When comparing the streaming quality between MPEG-DASH vs. HLS, the answer is that both are at par and there is not much difference between the two rival protocols.
Initially, MPEG-DASH held the advantage due to its codec agnostic characteristic. This allowed it to deliver better video quality at lower bitrates. However, now, HLS has announced its support for HEVC/H.265 codec due to which it can now deliver quality streams at-par with other top codecs.
So, what’s their take on video resolution? Initially, MPEG-DASH held the advantage since it delivered higher resolution video streams than HLS. However, HLS, in late 2017, announced its 4K video resolution support which eliminated the previously-existent difference between the two.
So, judging all the essential parameters, we can say that both HLS and MPEG-DASH can deliver excellent-quality videos.
Which Streaming Protocol Should you Choose?
The type of streaming protocol you choose depends on certain parameters:
- How much scalability is offered
- Codec requirements
- Latency requirements
- Need for adaptive bitrate streaming
The kind of streaming protocol you choose mostly depends on your requirements. You have to choose your priorities before deciding whether to go for HLS or MPEG-DASH or any other streaming protocol for that matter.
Both Apple’s HLS and MPEG DASH are dominant technologies in the streaming market, and in terms of the quality, there is little difference offered by both.
While HLS scores high in terms of compatibility, supporting almost all browsers and devices, MPEG-DASH is codec agnostic enabling you to employ any codec you want to playback video streams. Initially, MPEG-DASH supported only 4K video streams but HLS recently announced its 4K support which further lessened the difference gap.
There isn’t a huge difference between the two except for one major factor: support.
In terms of support, HLS is more widely compatible than MPEG-DASH. There are more than 2 billion iOS users globally, and most of them will not be able to play MPEG-DASH video streams unless they use third-party browsers.
Muvi supports both RTMP and HLS feeds for your Live Streaming service. You just have to enter your live feed URL in the backend and Muvi’s video player will embed the feed for immediate playback to end-users.
Try our 14-day FREE trial, now!
Add your comment