Video & Live Streaming

What is MPEG DASH (Dynamic Adaptive Streaming over HTTP)?

Atiqul Hasan | July 4, 2019 | 34 views | 1 People said helpful.

What is MPEG-DASH?

The demand for video streaming through the web has been increasing day by day. But there is no such common video streaming which supports all the formats and plays in all the devices like Apple devices, Android devices, etc. MPEG-DASH is one which aims to address the interoperability between various servers and devices.

MPEG DASH (Dynamic Adaptive Streaming over HTTP) is a streaming standard by MPEG that enables streaming of media content over the Internet delivered from conventional HTTP web servers. It provides interoperability between various servers and devices. It is the first international standardized HTTP-based adaptive bit-rate streaming protocol which supports a broad range of devices like mobile phones, tablets, PCs, TVs, laptops, set-top boxes, game consoles and so on.

How does MPEG DASH work?

MPEG-DASH is an adaptive bitrate streaming technology where the multimedia content is captured and stored on an HTTP server and is delivered client players using HTTP. In this DASH standard, the media content exists on the server in two parts.

  • Media Presentation Description (MPD): MPD describes a manifest of the available content, its various alternatives, their URL addresses, and other characteristics.
  • Segments: It contains the actual multimedia bit streams in the form of chunks, in single or multiple files.
MPEG DASH (Dynamic Adaptive Streaming over HTTP)
Fig: The streaming between an HTTP server and a DASH client

At first, HTTP server provides client players with a list of the available media segment URLs in a Media Presentation Description (MPD) file. Clients can then sequentially request the media segments as required to provide uninterrupted playback of the media presentation. To play the content, the DASH client obtains the MPD which can be delivered using HTTP, email, thumb drive, broadcast, or other transports. By parsing the MPD, the DASH client learns about the program timing, media content availability, media types, resolutions, minimum and maximum bandwidths, and the existence of various encoded alternatives of multimedia components, accessibility features and required digital rights management (DRM), media component locations on the network, and other content characteristics.

Based on the MPD information, the DASH client selects an appropriately encoded stream and sends the HTTP request to start streaming.

Received media segments are buffered by the client to handle network variations. During playback, the client monitors the network bandwidth fluctuations. Based on this information, the client decides how to adapt to the available bandwidth by fetching segments of different alternatives (with lower or higher bitrates) to maintain an adequate buffer.

MPEG-DASH allow the same content stream available at different servers or content delivery networks (CDN). The client can select any of the streams to maximize the available network bandwidth. In this case, the MPD provides multiple URLs for the same segment. The duration of segments can vary for both VoD and live streaming. For live streaming, the duration of the next segment can also be signaled within the current segment.

MPEG-DASH combines delivery formats into DASH profiles. These profiles specify features for interoperability. They are identified in the MPD by unique uniform resource names (URNs). Each segment can contain information about UTC time, so clients can control their clock drift.

Advantages of MPEG DASH

DASH poses numerous advantages over other adaptive streaming methods. Some of these are

  • The specification of DASH is designed to address current industry standards and practices.
  • It supports interoperable DRM which allows different vendor devices to communicate and stream across.
  • Designed to re-use most of the existing infrastructure and tools.
  • It allows independence of using the bit rate control algorithm in the client, the video and audio coding and metadata.
  • It supports server/client component synchronization (e.g. separate and multiplexed AV)

Conclusion

MPEG-DASH is a new iso standard that places the streaming intelligence on the client-side facilitating a scalable architecture which comes along with significant lower distribution costs due to the usage of cost-efficient HTTP infrastructure. Previous adaptive streaming technologies – such as Apple HTTP Live Streaming (Apple HLS), Adobe HTTP Dynamic Streaming (Adobe HDS), and Microsoft Smooth Streaming use different manifest and segment formats. To receive content from each proprietary server, a device needs to support the proper protocols. On the other hand, the MPEG-DASH standard provides a full set of features for HTTP adaptive-bitrate streaming that allows a standard-based client to be able to receive content from any standards-based server, thereby enabling interoperability between servers and clients of different vendors.