This document provides an overview of MPEG DASH (Dynamic Adaptive Streaming over HTTP):
- MPEG DASH is an open standard for streaming media over HTTP that allows clients to choose the quality of the media stream based on available bandwidth.
- Key features include using HTTP for delivery, client-driven streaming using byte-range requests, support for live and on-demand streaming, and seamless switching between representations of different quality levels.
- The standard defines media presentation descriptions that describe available representations and segments, as well as segment formats based on ISO BMFF and MPEG-2 TS containers.
- Profiles restrict features to enable deployment, and the DASH Promoters Group is working
2. Agenda
• Review of what is DASH
• Latest Status in MPEG DASH
• Profile Discussion
• DASH PG and IMTC
• Summary
2
3. Apple HLS
MPEG 2008 MS SS
2010 2008
OIPF W3C
2009 2011?
3GPP DASH
others
2009
2011
Open Standard
Delivery Format
3
4. DASH in a Nutshell
• What: Video streaming solution where small pieces of video streams/files are requested
with HTTP and spliced together by the client. Client entirely controls delivery.
• Why: reuse widely deployed standard HTTP servers/caches for scalable delivery, e.g.
existing Internet CDNs; traverse NAT/Firewalls; simple rate adaptation; fixed-mobile
convergence; convergence of services, etc.
• Use case: Accessing OTT video streaming services over any access network to any device
HTTP
over
any
Access
Network
(fixed,
Media
mobile)
Preparation
Media HTTP HTTP
Origin Servers Caches
5. Example Deployment Architecture
Original • Original content encoded into video streams
content at different media rates
Content Media player
Preparation • Segments video streams into HTTP resources
• MPD file generated for the video files
• URL generated for MPD file
Ingestion
component • All intelligence is here
• Accesses MPD file based on URL & makes
requests for appropriate video files
• Continually monitors and adjusts media rate
based on network conditions, etc.
HTTP
delivery
Serving Cloud HTTP/IP
(HTTP web caching servers)
network DASH client
Any radio access:
any cellular, WiFi,
parallel delivery 5
7. MPEG DASH Status
• ISO/IEC 23009-1 DIS ratified in November 2011 to move to IS
– document is now at ITTF for final processing
– Final text is made available through liaison to 3GPP and others
– http://www.3gpp.org/ftp/Inbox/LSs_from_external_bodies/ISO_IEC_J
TC1_SG29_WG11/29n12517.zip
– made available publicly for free after ITTF completes final processing
03/2012.
• Same publication timeline for
– extensions to ISO base media FF to support DASH 14496-12/AMD 3
– Common Encryption 23001-7 with AES-128 CTR
• Other documents:
– Conformance and Reference Software (see WD 23009-2)
– Technical Report on Implementation Guidelines (see WD 23009-3)
7
8. Typical Uses Cases
• MPEG-DASH supports simple and advanced use cases:
– On-Demand, Live and time-shift (nPVR) streaming
– Dynamic ad-insertion
– Dynamic update of program
– Delivery of same content on three screens
– Delivery of any multimedia content
(2D, 3D, animation, graphics, multiview, subtitles, text, etc.), not just
AV
– Support of multiple languages and different audio configuration
– etc.
• Simple use cases can be gradually extended to more complex
and advanced ones
9. What is specified – and what is not?
Media Presentation on HTTP Media DASH Client
Server Presentation
Description
Segment
DASH
Access
Engine
Resources
on-time http
located by requests to
HTTP-URLs segments
Media
Engines
HTTP
HTTP/1.1 Access
Client
9
10. Media Presentation Data Model
• Media Presentation Description (MPD) describes
accessible Segments and corresponding timing Segment Info
Initialization Segment
http://www.e.com/dash-5
Media Presentation Media Segment 1
Period, start=0s
Period, start=0s •start=100 Representation 1 http://www.e.com/dahs-5-1
•baseURL=http://www.e.com/ •bandwidth=500kbit/s
… … •width 640, height 480 Media Segment 2
Adaptation Set 1 … start=10s
http://www.e.com/dash-5-2
Period, start=100s Segment Info
video
… duration=10s Media Segment 3
start=20s
Adaptation Set 2 Template: http://www.e.com/das-5-3
audio ./dash-5-$Number$
Period, start=295s
…
…
Representation 2
•bandwidth=250kbit/s
… •width 640, height 480
…
Media Segment 20
Splicing of Selection of start=190s
arbitrary content Components/Tracks Select/Switch of http://www.e.com/dash-5-20
10 Bandwidth
11. Key feature – Common Timeline
• Representations in one Period share common
presentation timeline
– presentation time of access unit within the media
streams is mapped to the global common
presentation timeline
– enables synchronization of different media
components and seamless switching of different
coded versions of the same media components
• Other timelines
– segment availability times (mapped to UTC clock)
– internal media decode time (not exposed on DASH
level)
11
12. Client-Side Process
Advertisement
Back to video
Segments
Insertion
250 Kbps
500 Kbps
1 Mbps Segment
30s Period 12s Period 20s Period
Process Factors relevant for Representation
Client downloads the MPD file selection
Client downloads segment by segment based Buffer conditions
on playout process Network conditions
Bitrate determined by client User change in resolution – ex: full screen
Device activity and resources
13. Switching Support Features
• Segment Alignment
– permits non-overlapping decoding and presentation of
segments from different Representations
• Stream Access Points (SAPs)
– presentation time and position in segments at which
random access and switching can occur
• Bitstream Switching
– concatenation of segments from different Representations
results in conforming bitstream
• Media Stream Structure Similarity
– permits switching at Open GOP boundaries
• Alignment and SAPs can also apply for Subsegments
13
14. Segments
• ISO/IEC 23009 focuses on Segment formats based on
MPEG container formats. Specifically,
– in 6.3, Segment formats are described for use with Media
Segments based on the ISO Base Media File Format as
defined in ISO/IEC 14496-12;
– In 6.4, Segment formats are described for use with Media
Segments based on the MPEG-2 Transport Stream as
defined in the ISO/IEC 13818-2;
• In both cases the Segment formats are defined such
that the Media Segment formats comply with the
respective container formats.
• Guidelines for adding other Segment formats are
provided in Annex F.
14
15. ISO BMFF DASH Segments
ftyp moov moof mdat moof mdat moof mdat
Initialisation styp sidx moof mdat moof mdat
Segment
• binary information in ISO box structure on Media
– Accessible units (one or multiple fragments) Segment
– Each unit is described by
• Byte range in the segments
• Accurate presentation duration (seamless switching)
• Presence and timing of stream access positions
• Provides a compact bitrate-over-time profile
– Can be used for intelligent request scheduling
16. Summary: DASH Selected Feature List
• Live, On-Demand and Time-shift services
• Independency of request size and segment size (byte range requests)
• Segment formats
– ISO base media FF and MPEG-2 TS
– guidelines for integrating any other format
– Are codec independent
• Support for server and client-side component synchronization
(e.g., separate and multiplexed audio and video)
• Support for efficient trick mode
• Simple splicing and (targeted) ad insertion
• Multiple base URLs for the same content
• Clock drift control for live sessions
• DASH metrics for reporting the session experience
• Profile: restriction of DASH and system features (claim & permission)
• Content Descriptors for Protection, Accessibility, Rating, etc.
– Enables common encryption, but different DRM (DECE-like)
16
18. MPEG Profiles
• Set of restrictions on the offered Media Presentation (MPD & Segments)
• can also be understood as permission for DASH clients that only implement
the features required by the profile to process the Media Presentation
• Profiles defined in ISO/IEC 23009 (as below). More restrictions may be added
Full Profile
ISO Base media file main
MPEG-2 ISO Base ISO Base
MPEG-2
TS media file media file
TS
main format On format
simple
Demand Live
18
19. Profile Discussions beyond MPEG
• Main motivation:
– broad availability of clients supporting profile
– enable deployment options in CDNs
• Client Profile
– support for one/multiple content profile
– support for multiple addressing schemes
– support for efficient, but still simple switching scheme
• Media Presentation profile
– Media presentation offering with one content profile,
one switching scheme and one addressing scheme
19
21. DASH Promoters Group
• Informal collaboration of companies that have committed
or at least significant interest to deploy an open standard
for HTTP-based streaming based on DASH.
• Effort may include recommending profiles, codecs, DRM
• Just started to create PR information, white papers,
licensing, attend conferences, demos, interoperability
efforts and so on
• Current Members: Microsoft, Qualcomm, Netflix, Samsung,
Ericsson, Akamai, AEG, Harmonics, Adobe, and many more
have joined recently, please check http://dashpg.org
• Significant interest from content providers (globally),
operators, device manufacturers, etc.
• Interested companies are invited to listen in and/or join
21
22. Profile Considerations @ DASH PG
• Deployable industry profile
– Based on combination of ISO BMFF live and On-
Demand profile with some restrictions
– Core Content Profile based on common codecs:
H.264/AVC MP@3.0, HE-AAC, SMPTE TT, and
Common Encryption
– Extensions into various dimensions (HD, 3D, MC
audio, low latency)
• Establishment through successful
interoperability of multiple/many vendors
22
23. IMTC Potential Role
• Provide framework and credibility for interops
• Joint work between DASH PG and IMTC
– Define test cases for deployment profiles
– organize interop for DASH including different
device types (mobile, tablet, STV, iTV)
– in case of successful interop promotion
• Problem right now:
– April is too soon (clashes with NAB and 3GPP SA4)
– October may be too late
23
25. Summary
• MPEG DASH standardization is completed
– harmonized industry standard for OTT video
– applicable to TV and mobile world
• Working towards deployments:
– Conformance and Reference SW in MPEG
– Implementation Guidelines (3GPP and MPEG)
– Integration into 3GPP RANs (3GPP)
– Integration into browser environment (
– Promotion of the technology: events, PR, etc. (DASH PG)
– Definition of deployable industry profile (DASH PG)
– Multivendor demonstrations (MWC, NAB, IBC, etc.)
– Official Interoperability tests (IMTC)
• Support for all activities welcome and desirable
25