Upload
christian-timmerer
View
13.271
Download
1
Embed Size (px)
Citation preview
MPEG-DASH Conformance and Reference SoftwareISO/IEC 23009-2
Christian Timmerer
Alpen-Adria-Universität Klagenfurt (AAU) bitmovin GmbHresearch.timmerer.com blog.timmerer.com dash.itec.aau.at bitmovin.net
[email protected], [email protected]
105th MPEG Meeting, Vienna, AustriaJuly 2013
Outline
• Introduction and overview• Media presentation conformance• DASH access client reference software: libdash• Sample software– Clients: sample player, GPAC– Segmenter: MP4Box
• Summary
July 2013 2Christian Timmerer (AAU/bitmovin)
Introduction• Conformance and reference software of MPEG-DASH serves three
main purposes:– validation of the written specification;– clarification of the written specification; and– conformance testing for checking interoperability for the various
applications against the reference software which aims to be compliant with ISO/IEC 23009
• ISO/IEC 23009-2: media presentation conformance, test vectors, DASH access engine reference software, sample software
July 2013 3Christian Timmerer (AAU/bitmovin)
Overview• Media presentation conformance
– MPD validator: xlink, schema validation, add’l validation rules– Segment conformance: check ISOBMFF, M2TS against DASH
specification– Dynamic service validator: dynamic updates of the MPD
• DASH conformance sequences• DASH access client reference software
– libdash: access to information contained in the MPD + schedule download of segments
• Sample software– Sample player: utilizes libdash, GUI, manual adaptation logic– GPAC player: integrated player or embeddable DASH engine– MP4Box segmenter: create segments + MPD based on encoded
content
July 2013 4Christian Timmerer (AAU/bitmovin)
MPD Conformance
Free online MPD validation service accessible at http://dash.itec.aau.at
July 2013 5Christian Timmerer (AAU/bitmovin)
Resolves all W3C XLINK attributes as defined in
MPEG-DASH Part 1
Performs the XML validation (i.e., well-formed and valid) against the MPD schema as defined
in W3C XML and W3C XML SCHEMA
Performs the Schematron validation as defined in ISO/IEC 19747-3 according to the rules defined in MPEG-DASH Part 2
libdash• MPEG-DASH Part 1 defines XML-based MPD and segment formats
(M2TS, ISOBMFF)– MPD reflects the DASH data model providing HTTP URLs to
downloadable segments• Adaptation logic is deliberately excluded from the specification and
left open for industry competition• libdash provides the following features:
– Object-oriented interface into the MPD– Access information within MPD and schedule download of segments– External interfaces: DASH streaming control (incl. adaptation logic),
segment parser, media player – deliberately not implemented: may vary across use cases, deployments, and go beyond what is normatively specified
• libdash has full standard support, well-defined interfaces, and enables integration within a media ecosystem ➜ libdash is an enabler!
July 2013 7Christian Timmerer (AAU/bitmovin)
Sample Player• Qt-based cross-platform GUI + ffmpeg based on libdash• Works with conformance bitstreams, DASH-IF test vectors,
and major DASH datasets
July 2013 Christian Timmerer (AAU/bitmovin) 8
Select available MPDs
Video content
Download MPD, start/stop streaming
Interactive seamless switching of AdaptationSets
and Representations
Segment, frame, audio, video
buffer
GPAC Players for DASH• Open Source project
http://gpac.sourceforge.net• Integrated player or embeddable DASH engine– Multi-platform: desktop, mobile– Playback of a very large subset of DASH conformant
content• M2TS and ISOBMFF segments• "static" or "dynamic" presentations• Live, Main, OnDemand and Simple profiles
– Support for quality changes • Interactively or automatically (bandwidth estimation and
limitation)
July 2013 9Christian Timmerer (AAU/bitmovin)
GPAC MP4Box for Segmenting• Conformant generation of– Media files (ISOBMFF, M2TS)– MPD (all profiles)
• Support for several MPD syntax options– SegmentList, SegmentTemplate, SegmentTimeline
• Automatic mapping of the inputs into adaptation sets, representations, groups, assignment of roles– Based on the content characteristics
• Flexible generation of segments and subsegments with possible indexing, RAP alignment, and bitstream switching features
• Generation of "dynamic" MPD and segments and updates from pre-recorded content
July 2013 10Christian Timmerer (AAU/bitmovin)
Summary• MPEG-DASH conformance and reference software available and
accessible via MPEG SVN repository– Includes conformance bitstreams for MPDs, segments, and
combinations thereof– libdash + sample player: http://www.bitmovin.net/libdash/– GPAC: http://gpac.sourceforge.net
• Additional useful resources– DASH dataset (dash.itec.aau.at): full-length movies w/ different
segment sizes, spatial resolutions, bitrates, and genre– Distributed DASH dataset (dash.itec.aau.at): one dataset distributed
across seven sites (Klagenfurt, Paris, Prague, Torino, Crete, Delft, Taiwan), usage of multiple BaseURL elements
– DASH Industry Forum (dashif.org): DASH-AVC/264 interoperability points, identifier repository, reference client (dash.js, https://github.com/Dash-Industry-Forum/dash.js/), sample players, clients
July 2013 11Christian Timmerer (AAU/bitmovin)