MPD

Media Presentation Description

Services
Introduced in Rel-9
An XML-based document used in Dynamic Adaptive Streaming over HTTP (DASH) to describe the structure and characteristics of a multimedia presentation. It provides clients with information about available media segments, their URLs, codecs, resolutions, bitrates, and timing, enabling adaptive bitrate streaming. It is a fundamental component for delivering efficient, high-quality video and audio services over mobile and fixed networks.

Description

The Media Presentation Description (MPD) is a core metadata file defined by 3GPP for the Dynamic Adaptive Streaming over HTTP (DASH) standard. It is an XML document that provides a complete blueprint of a multimedia presentation, enabling a DASH client to dynamically request and adaptively play back media content. The MPD describes the temporal and structural relationships between media components, such as video, audio, and subtitles, which are segmented and stored on an HTTP server. It does not contain the media data itself but acts as a manifest or playlist, detailing how the presentation is organized over time (Periods) and how each media component is represented across different qualities (Representations) within Adaptation Sets.

Architecturally, the MPD is structured hierarchically. At the top level, it defines the overall presentation with attributes like media presentation duration and minimum buffer time. The presentation is divided into sequential Periods, which represent contiguous time intervals of the content, allowing for changes in content (e.g., main feature to advertisement) or encoding parameters. Within each Period, Adaptation Sets group media components that are logically associated, such as all video streams or all audio tracks in different languages. Each Adaptation Set contains multiple Representations, which are alternative encodings of the same media component at different bitrates, resolutions, or codecs. Each Representation is further divided into Segments, which are the actual media files (e.g., .mp4 or .m4s chunks) that the client downloads via HTTP GET requests. The MPD provides URLs, byte ranges, and timing information for these segments.

How it works involves the client first fetching and parsing the MPD before playback begins. Based on the MPD information and real-time network conditions (e.g., available bandwidth), the client's adaptation logic selects the most appropriate Representation to download segment by segment. This enables adaptive bitrate streaming, where the client can switch to a higher or lower quality Representation between segments to maintain smooth playback without buffering. The MPD can be static (all information is known in advance) or dynamic (updated periodically for live streaming, with new Periods and Segments added as they become available). The MPD also contains essential metadata such as codec information (e.g., HEVC, AAC), DRM protection system details (e.g., Common Encryption, signaling for MPEG-CENC), and accessibility features like role descriptors for different audio tracks (e.g., commentary, descriptive video). Its role is to decouple the media description from the delivery, providing a flexible, standardized way to enable efficient, reliable, and high-quality streaming services over best-effort IP networks like the internet and mobile networks.

Purpose & Motivation

The MPD was created to address the challenges of delivering high-quality, adaptive video streaming over HTTP, which became the dominant method for internet video distribution. Prior to DASH and the MPD, proprietary adaptive streaming solutions (like Apple's HLS or Microsoft's Smooth Streaming) used different manifest formats, leading to fragmentation and increased complexity for content providers who had to encode and store multiple versions of their content for different devices and platforms. The MDP, as part of the standardized DASH specification, provides a unified, interoperable format that enables a single set of encoded media segments to be described and delivered to any compliant client, reducing storage and operational costs.

The motivation for its development within 3GPP stemmed from the need to efficiently deliver multimedia services over mobile networks, where bandwidth is variable and congestion can occur. Traditional progressive download or non-adaptive streaming often resulted in poor user experience, with frequent buffering or low video quality. The MPD enables intelligent client-side adaptation by providing all necessary information for the client to make informed decisions about which media segment to fetch next based on current network conditions and device capabilities. This solves the problem of delivering a consistent, high-quality viewing experience across diverse networks and devices, which is critical for mobile operators and content providers.

Historically, it was introduced in 3GPP Release 9 as part of the initial DASH specifications, providing a foundational element for 3GPP's Packet-Switched Streaming Service (PSS) and later for Enhanced Multimedia Broadcast/Multicast Service (eMBMS) and 5G Media Streaming. It addressed the limitations of earlier 3GPP streaming protocols that were not natively adaptive or HTTP-based. By leveraging HTTP's ubiquity, caching, and firewall traversal, and combining it with the rich description in the MPD, DASH became a key enabler for scalable, efficient video delivery, forming the basis for modern streaming services, including over-the-top (OTT) platforms and broadcast-like services in mobile networks.

Key Features

  • XML-based structured manifest describing temporal media presentation structure
  • Supports both static (on-demand) and dynamic (live) streaming scenarios
  • Enables adaptive bitrate switching by describing multiple Representations per Adaptation Set
  • Includes comprehensive metadata: codecs, resolutions, bitrates, DRM information, and accessibility roles
  • Facilitates efficient HTTP-based segment delivery using templates or explicit URLs
  • Supports multi-period content for ads, chapters, or variable encoding parameters

Evolution Across Releases

Rel-9 Initial

Introduced the initial MPD specification as part of the baseline Dynamic Adaptive Streaming over HTTP (DASH) standard. Defined the core XML schema, hierarchical structure with Periods, Adaptation Sets, and Representations, and support for on-demand content with static MPDs. Established the foundation for adaptive media delivery over 3GPP networks.

Defining Specifications

SpecificationTitle
TS 22.816 3GPP TS 22.816
TS 26.116 3GPP TS 26.116
TS 26.118 3GPP TS 26.118
TS 26.233 3GPP TS 26.233
TS 26.234 3GPP TS 26.234
TS 26.244 3GPP TS 26.244
TS 26.247 3GPP TS 26.247
TS 26.307 3GPP TS 26.307
TS 26.346 3GPP TS 26.346
TS 26.347 3GPP TS 26.347
TS 26.348 3GPP TS 26.348
TS 26.501 3GPP TS 26.501
TS 26.512 3GPP TS 26.512
TS 26.517 3GPP TS 26.517
TS 26.804 3GPP TS 26.804
TS 26.827 3GPP TS 26.827
TS 26.848 3GPP TS 26.848
TS 26.854 3GPP TS 26.854
TS 26.857 3GPP TS 26.857
TS 26.905 3GPP TS 26.905
TS 26.909 3GPP TS 26.909
TS 26.917 3GPP TS 26.917
TS 26.929 3GPP TS 26.929
TS 26.938 3GPP TS 26.938
TS 26.949 3GPP TS 26.949
TS 26.955 3GPP TS 26.955
TS 26.957 3GPP TS 26.957
TS 26.981 3GPP TS 26.981
TS 26.998 3GPP TS 26.998
TS 28.406 3GPP TS 28.406
TS 29.116 3GPP TS 29.116
TS 29.513 3GPP TS 29.513