Streaming video requires that various technologies all work in unison. One aspect of this process involves knowing how to deliver live streams and video-on-demand to your viewers. This article focuses on comparing MPEG-DASH vs. HLS as two of the top streaming protocols.
First, we’ll define streaming protocols and how they work. Next, we’ll review the specifics of MPEG-DASH vs. HLS streaming. We’ll also compare these two standards on a variety of quality and reliability metrics. Finally, we’ll provide you with our ultimate recommendation on MPEG-DASH vs. HLS protocols. Our goal here is to help you decide on the most effective streaming solutions–for your video content and for your viewers.
Introduction to streaming standards
In the past, online video was delivered primarily via RTMP. RTMP is a Flash-based standard that’s still used today for sending video from your encoder to your online video platform.
However, Flash-based video is no longer appropriate for delivering video to users. The Flash plugin has been depreciated and fewer and fewer devices support this aging protocol each year.
Flash video online has been replaced by HTML5. The latest web standards support built-in video playback with no need for plugins. Media files can be streamed directly. HTML5 is now by far the preferred method for video playback.
However, this didn’t solve the live streaming problem. Without RTMP, what’s next on the horizon? First, as a direct result of the decline of RTMP and Flash, HLS, HDS, and Microsoft Smooth Streaming protocols grew in usage and popularity. One of these in particular rose to the top of the pack: HLS.
Starting in 2015, young millennials (ages 14-25) began watching more video on digital devices than on television. This trend continues today, and businesses must keep shifting to keep up. Though HLS is still the most popular approach, MPEG-DASH represents the newest streaming protocol available today. With that background in mind, let’s jump right into our MPEG-DASH vs. HLS streaming comparison.
What is HLS?
HLS is short for HTTP Live Streaming. It is a protocol used to stream live video over the internet. Originally developed by Apple, at first only the iPhone supported HLS. However, today almost every device supports this protocol. It has become a proprietary format.
As the name implies, HLS delivers content via standard HTTP web servers. This means that no special infrastructure is needed to deliver HLS content. Any standard web server or CDN will work. Additionally, content is less likely to be blocked by firewalls with HLS.
HLS will play video encoded with the H.264 or HEVC/H.265 codecs. Video is chopped up into 10-second segments. Latency for delivery tends to be in the 45 second range. However, DaCast now has a solution for low-latency HLS live streaming that reduces latency to 10 seconds or less.
This protocol also includes a number of other built-in features. For example, HLS is an adaptive bitrate protocol. This means that the client device and server dynamically detect the internet speed of the user, and then adjust video quality in response.
Therefore, a mobile user can receive a full HD stream while using speedy, home WiFi. The same user can receive medium-quality stream after walking out the door via 4G. Finally, that user can even maintain a low-quality stream when encountering areas of poor cell service. All of this happens automatically with HLS.
Other HLS features include embedded closed captions, synchronized playback of multiple streams, good support for advertising standards (i.e., VPAID and VAST), DRM support, and more.
What is MPEG-DASH?
MPEG-DASH is the next streaming protocol we’ll examine in this MPEG-DASH vs. HLS comparison. As a newer standard, DASH is an up-and-coming competitor to HLS.
DASH was created between 2009 and 2012 as a response to fragmentation in the video streaming market. At the time, Apple’s HLS was competing with several other streaming protocols. The outcome was uncertain, which led standards organizations to develop MPEG-DASH as an alternative, unifying streaming protocol.
DASH is an open-source standard. Like HLS streaming protocol, DASH is an adaptive bitrate video method. It also supports advertising, and the technology for this is rapidly advancing.
It also supports DRM, HTTP delivery, lower-latency streaming, and a number of other features. For example, it’s codec agnostic. It supports H.264, HEVC/H.265, VP9, and any other codec you choose to use.
MPEG-DASH vs. HLS: Which is more widely supported?
DASH was envisioned as the successor to the conflicted streaming market that existed a few years ago.
However, today the situation has changed. HDS and Smooth Streaming have declined in importance, and HLS is the leading protocol. HLS was by far the dominant streaming video format in 2017.
Any Android, iOS, Windows, Mac, Linux, Chrome OS, or other modern device should support HLS. This includes smart TVs, game consoles, and set-top boxes.
However, MPEG-DASH is not supported on the Safari browser. Given that most iPhone, iPad, AppleTV, and macOS users stick with the default Safari browser, this is major downside for MPEG-DASH vs. HLS.
MPEG-DASH vs. HLS: Which offers higher-quality streaming?
When watching a poor quality stream, viewers get upset before they even realize they’re upset. When viewer satisfaction falls, they’re much more likely to leave the broadcast. What’s worse, they’re more likely to view your brand negatively. In other words, video quality is of utmost importance for viewer attraction and retention.
When comparing MPEG-DASH vs. HLS, then, which can deliver better quality? The short answer–there’s not much difference between the two in reality.
However, MPEG-DASH did used to hold the advantage. By being codec agnostic, MPEG-DASH could deliver better quality at lower bitrates. However, now HLS supports HEVC/H.265. This delivers quality essentially on-par with other top codecs, essentially eliminating this distinction.
So what about resolution? Likewise, MPEG-DASH used to support higher resolution video than HLS. However, HLS added support for 4K video resolution in late 2017. This improvement eliminated another previous difference between MPEG-DASH vs. HLS.
Both protocols also support HDR (High Dynamic Range), which can deliver a wider color gamut and better tonal rendition.
In terms of overall streaming video quality, both HLS and MPEG-DASH can deliver excellent-quality video.
MPEG-DASH vs. HLS: Which is more reliable?
Again, it’s largely a wash in terms of reliability.
HLS and MPEG-DASH, as we’ve mentioned, are both adaptive bitrate protocols. Users automatically receive the best-quality video that their internet connection can handle at any given moment.
Ideally, this should provide a stable, high-quality viewing experience to viewers while minimizing buffering and lag. However, you’ll need to be sure to use multi-bitrate streaming to take advantage of this functionality.
Both platforms are stable, easy to implement, and powerful. In short, they’re both quite reliable.
MPEG-DASH vs. HLS: Which protocol should you choose?
As this article highlights, there is a great deal of feature parity in MPEG-DASH vs. HLS. Both are powerful, reliable protocols for delivering online video.
However, we think it’s the compatibility discussion that tips the scales–toward HLS. HLS is simply much more widely compatible than MPEG-DASH. There are some 1-2 billion iOS users globally, and macOS represents hundreds of millions more. Most of those users, unless they use third-party browsers, can’t play MPEG-DASH video streams.
You can’t afford to ignore a potential audience of that size. We conclude, like many others, that HLS is the best protocol to use for live streaming in 2018 and in the foreseeable future. It will provide the features you need along with the compatibility you can’t afford to miss. Nevertheless, we closely watch industry trends and new compatibility opportunities to ensure we’re offering our customers the best. We’ll do our best to update you in this and future articles should the scales tip in the other direction.
It’s also important to note that in 2016, Apple announced that HLS would now support fMP4 (Fragmented MP4) in the HLS protocol. Some in the industry viewed this as a first step toward cross-compatibility between HLS and MPEG-DASH.
Conclusion
One third of all online activity entails watching video. Many businesses are finding that video makes up an increasingly important part of their operations. With this ongoing trend on the rise, we can’t afford to use the wrong technology. To that end, we hope that this article has introduced you to the MPEG-DASH vs. HLS debate. More so, we hope it’s helped you to decide which side you’re on.
Interested in more regular tips on live streaming and exclusive offers? Join our LinkedIn group! Do you still need a live streaming platform? We recommend you check out DaCast. We offer an HLS-ready platform that works with thousands of businesses just like yours.
Click the button below to sign up for our 30-day free trial (no credit card required) and start streaming today!
Any questions or comments? We love to hear from our readers, so sound off below this article and we’ll do our best to respond as soon as we can! Thanks for reading, and as always—good luck with your live streams.
By Max Wilbert.
'Network > Application' 카테고리의 다른 글
Send RTMP Receive HLS/MPEG-DASH (0) | 2019.06.24 |
---|---|
ffmpeg 명령어 (0) | 2019.06.21 |
MPEG-DASH live streaming in nginx-rtmp-module (0) | 2019.06.21 |
동영상 기본용어 (0) | 2019.06.20 |
Nginx-RTMP 사용 Streaming (0) | 2019.06.19 |