A Look into Video Streaming — MPEG-DASH vs HLS

Pankaj Baagwan
ducktyp’d
Published in
5 min readJan 11, 2023

This article was originally published here on December 21, 2021

Streaming is a way of delivering data over the Internet so that a device can start displaying the data before it fully loads. Video is streamed over the Internet so that the client device does not have to download the entire video file before playing it.

MPEG-DASH is a streaming method. DASH stands for “Dynamic Adaptive Streaming over HTTP.” Because it is based on HTTP, any origin server can be set up to serve MPEG-DASH streams.

MPEG-DASH is similar to HLS, another streaming protocol, in that it breaks videos down into smaller chunks and encodes those chunks at different quality levels. This makes it possible to stream videos at different quality levels, and to switch in the middle of a video from one quality level to another one.

There is a lot that goes on behind the scenes of live streaming. Various technologies work in unison to produce the end result that viewers see when they watch your content.

One technological aspect of this process involves delivering the video from the camera to the encoder to the video host and finally, to the viewers.

Two of the top streaming protocols that professional broadcasters use are MPEG-DASH vs HLS.

In this post, we’re going to define streaming protocols and how they work before reviewing the specifics of HLS Streaming and MPEG-DASH. We’ll also compare these two standards on a variety of quality and reliability metrics.

Introduction to Streaming Protocols

Streaming protocols work behind the scenes to bring a broadcast to life. A streaming protocol is a type of technology that is designed to transport video files over the internet.

In the past, online video was delivered primarily via the RTMP protocol. RTMP or real-time messaging protocol is a Flash-based live streaming standard that’s still used today for sending video from your RTMP 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. It is no longer possible to run Flash player in the new versions of most web browser.

RTMP has slowly been replaced by the HLS protocol.

In the past decade, the MPEG-DASH protocol has become a player in the game. It serves the same purpose as HLS, but since it is the newest option available, it is on the rise. This has created an increase in the need to understand the different between MPEG vs HLS.

With that background in mind, let’s jump right into our MPEG-DASH vs HLS streaming comparison.

What is HLS?

HLS is a streaming protocol that was developed by Apple. HLS is short for HTTP Live Streaming. It is a protocol used to stream live video over the internet. Originally developed by Apple, the purpose of HLS was to make the iPhone capable of accessing live streams.

At first, HLS was exclusive to iPhones, but today almost every device supports this protocol, so 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 this protocol, which is a plus.

HLS can play video encoded with the H.264 or HEVC/H.265 codecs.

How it works is video is chopped up into 10-second segments. Latency for delivery tends to be in the 45-second range.

This protocol also includes several 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 adjusts video quality accordingly. HLS does a lot more than just delivery your video; it impacts the quality of the video delivery.

That’s how a mobile user can receive a full HD stream while using speedy, home WiFi. The same user can receive a medium-quality stream after walking out the door via LTE. Finally, that user can even maintain a low-quality stream when encountering areas of poor cell service. All of this happens automatically with HLS. Adaptive bitrate protocol is one reason why HLS stands out when comparing DASH vs HLS.

Other HTTP live streaming features include HLS ingest via RTMP encoders, 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 newest streaming protocol, but it isn’t necessarily the best.

MPEG-DASH is the next streaming protocol we’ll examine in this comparison. As a newer standard, MPEG-DASH is an up-and-coming competitor to HLS. As a newcomer, MPEG DASH has gained a lot of recognition in recent years.

This protocol was created as a response to fragmentation in the video streaming market. At the time, Apple’s HLS was competing with several other video streaming protocols. The outcome was uncertain, which led standards organizations to develop MPEG-DASH as an alternative, unifying streaming protocol.DASH streaming was developed to ensure that there was a protocol everyone could use.

MPEG-DASH is an open-source standard. Like the HLS streaming protocol, MPEG-DASH is an adaptive bitrate video method. It also supports advertising, and the technology for this is rapidly advancing. DASH protocol stands out with its advertising support, and because it is always changing.

It also supports DRM, HTTP delivery, lower-latency streaming, and several other features. For example, it’s a codec agnostic. It supports H.264, HEVC/H.265, VP9, and any other codec.

HLS vs. MPEG-DASH

Now that you are familiar with the history of these two protocols, let’s compare them side by side. We’re going to look at which is more widely supported, which offers higher quality streaming and which is more reliable.

We will wrap our comparison up by determining which you should choose. DASH vs HLS, for live streaming.

Which is More Widely Supported?

MPEG-DASH was envisioned as the successor to the conflicted streaming market that existed several years ago.

This situation has evolved since HDS and Smooth Streaming have declined in importance, and HLS is the leading protocol.

Any Android, iOS, Windows, Mac, Linux, Chrome OS, or other modern devices should support HLS. This includes smart TVs, game consoles, and set-top boxes.

However, MPEG-DASH is not supported on the mobile Safari browser. Given that most iPhone, iPad, and AppleTV users use the default Safari browser, this is a major downside for HLS vs. MPEG-DASH.

Read More here ….

--

--

Pankaj Baagwan
ducktyp’d

Architect, Tech Innovator, Certified Ethical Hacker and Cyber Security Enthusiast