DASH

Dynamic Adaptive Streaming over HTTP

Services
Introduced in Rel-10
DASH is an adaptive bitrate streaming standard for delivering media over HTTP. It enables clients to dynamically select the best quality video segment based on network conditions and device capabilities, ensuring smooth playback. This is crucial for efficient video delivery in mobile and broadband networks.

Description

Dynamic Adaptive Streaming over HTTP (DASH) is an international standard for adaptive bitrate streaming that delivers media content from conventional HTTP web servers. Its architecture is client-driven, where the client autonomously selects media segments from different representations (bitrates, resolutions, codecs) listed in a Media Presentation Description (MPD) file. The MPD is an XML document that describes the structure of the media presentation, including timing, URLs, and characteristics of available media segments. The client periodically fetches this MPD and then requests individual media segments (typically a few seconds in duration) via standard HTTP GET requests. The core intelligence resides in the client's adaptation logic, which monitors real-time network conditions (like available bandwidth) and device parameters (like CPU load and screen resolution) to choose the next segment from the most appropriate representation, aiming to maximize quality while minimizing rebuffering.

The protocol operates by dividing the media content into a sequence of small HTTP-based file segments. Each segment contains a short interval of playback time, and for each interval, multiple alternative segments are encoded at different bitrates and resolutions. The client downloads these segments one by one. After downloading a segment, the client assesses conditions and decides which bitrate to select for the next segment. This decision happens seamlessly during playback, allowing for adaptation to changing network throughput, such as when a user moves from a 5G to a Wi-Fi network. DASH is codec-agnostic, supporting common video and audio codecs like AVC/H.264, HEVC/H.265, and AAC, and it can deliver both live and on-demand content.

Key components include the DASH client (the media player with adaptation logic), the HTTP server(s) hosting the segments and MPD, and the MPD itself. The MPD describes the temporal structure (Periods, Adaptation Sets, Representations, and Segments), accessibility (URL templates), and media characteristics (codec, resolution, bitrate). DASH's role in 3GPP networks is as a service enabler for media delivery, particularly for Multimedia Broadcast/Multicast Service (MBMS) and unicast streaming. It is integrated into the 3GPP Packet-Switched Streaming Service (PSS) and Multimedia Telephony Service (MTSI), providing a standardized method for efficient, scalable, and high-quality video streaming over mobile and fixed networks. Its use of HTTP allows it to leverage existing web infrastructure, including CDNs and caching proxies, making deployment straightforward and cost-effective.

Purpose & Motivation

DASH was created to address the challenges of delivering high-quality video over best-effort IP networks, particularly the Internet and mobile networks, where bandwidth fluctuates significantly. Prior to adaptive streaming, video was delivered via progressive download or real-time streaming protocols like RTSP, which often led to frequent buffering or poor quality when network conditions degraded. These methods typically locked the client into a single bitrate for the entire session, resulting in a suboptimal user experience. DASH solves this by enabling the client to adapt the media bitrate in real-time, ensuring continuous playback by trading off instantaneous video quality against the risk of rebuffering.

The historical context includes the proliferation of proprietary adaptive streaming solutions (like Apple's HLS and Microsoft's Smooth Streaming) which fragmented the market. 3GPP, in collaboration with MPEG, standardized DASH to create a single, interoperable solution. This was motivated by the need for a universal standard that could be deployed across different networks (3G, 4G, 5G, fixed) and devices, reducing complexity for content providers and enabling innovation in client adaptation algorithms. Standardization through 3GPP and ISO/IEC (as MPEG-DASH) ensured wide industry adoption.

DASH specifically addresses limitations of previous approaches by being purely HTTP-based, which simplifies traversal of firewalls and NATs, leverages ubiquitous HTTP caching for scalability, and decouples the streaming logic from the transport protocol. It gives content providers control over the offered representations and clients the intelligence to choose optimally, creating a robust system for delivering media in dynamic network environments, which is essential for mobile video consumption.

Key Features

  • HTTP-based delivery using standard web servers and caches
  • Client-driven adaptive bitrate selection based on real-time conditions
  • XML Media Presentation Description (MPD) for media structure
  • Codec-agnostic support for various video and audio formats
  • Support for both live and on-demand streaming services
  • Segmented media files enabling flexible CDN distribution

Evolution Across Releases

Rel-10 Initial

Introduced DASH as the baseline adaptive streaming standard within 3GPP, primarily for Packet-Switched Streaming (PSS). Defined the core architecture including the Media Presentation Description (MPD) format, segment formats, and client behavior for on-demand and live services. It established DASH as the method for delivering media over MBMS and unicast, enabling efficient video delivery in LTE networks.

Enhanced DASH with support for the 3GPP Multimedia Telephony Service for IMS (MTSI), enabling adaptive video streaming within voice and video calls. Introduced mechanisms for improved synchronization between audio and video streams and added support for trick modes (like fast-forward and rewind) in on-demand content.

Added support for Dynamic Adaptive Streaming over HTTP with Server and Network Assisted DASH (SAND), enabling messaging between DASH clients and network elements or servers to optimize adaptation decisions. Enhanced capabilities for 4K Ultra High Definition (UHD) streaming and improved support for multi-view and scalable video coding.

Introduced support for Virtual Reality (VR) and 360-degree video streaming using DASH, including metadata formats for describing spherical video. Enhanced the MPD for improved content protection and integration with MPEG Common Encryption (CENC). Further optimizations for mobile network efficiency.

Expanded support for High Dynamic Range (HDR) video and enhanced audio codecs like 3GPP Enhanced Voice Services (EVS). Improved SAND functionalities for better Quality of Experience (QoE) reporting and network assistance. Strengthened integration with LTE Broadcast (eMBMS).

Aligned DASH with 5G system requirements, focusing on ultra-low latency streaming for applications like live sports and cloud gaming. Introduced support for CMAF (Common Media Application Format) chunks to reduce latency and storage overhead. Enhanced mechanisms for edge computing scenarios.

Further optimized for 5G, with enhancements for Network Slicing to guarantee streaming performance. Improved support for immersive media, including 6DoF (six degrees of freedom) content. Enhanced QoE metrics collection and reporting for advanced analytics and service assurance.

Defining Specifications

SpecificationTitle
TS 23.722 3GPP TS 23.722
TS 26.116 3GPP TS 26.116
TS 26.117 3GPP TS 26.117
TS 26.118 3GPP TS 26.118
TS 26.233 3GPP TS 26.233
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.511 3GPP TS 26.511
TS 26.512 3GPP TS 26.512
TS 26.517 3GPP TS 26.517
TS 26.802 3GPP TS 26.802
TS 26.804 3GPP TS 26.804
TS 26.806 3GPP TS 26.806
TS 26.827 3GPP TS 26.827
TS 26.841 3GPP TS 26.841
TS 26.848 3GPP TS 26.848
TS 26.849 3GPP TS 26.849
TS 26.851 3GPP TS 26.851
TS 26.852 3GPP TS 26.852
TS 26.854 3GPP TS 26.854
TS 26.857 3GPP TS 26.857
TS 26.891 3GPP TS 26.891
TS 26.905 3GPP TS 26.905
TS 26.906 3GPP TS 26.906
TS 26.909 3GPP TS 26.909
TS 26.917 3GPP TS 26.917
TS 26.918 3GPP TS 26.918
TS 26.926 3GPP TS 26.926
TS 26.928 3GPP TS 26.928
TS 26.929 3GPP TS 26.929
TS 26.938 3GPP TS 26.938
TS 26.946 3GPP TS 26.946
TS 26.948 3GPP TS 26.948
TS 26.949 3GPP TS 26.949
TS 26.955 3GPP TS 26.955
TS 26.956 3GPP TS 26.956
TS 26.957 3GPP TS 26.957
TS 26.981 3GPP TS 26.981
TS 26.998 3GPP TS 26.998
TS 26.999 3GPP TS 26.999
TS 29.116 3GPP TS 29.116
TS 38.835 3GPP TR 38.835