ISO/IEC 23009-1:2019
(Main)Information technology — Dynamic adaptive streaming over HTTP (DASH) — Part 1: Media presentation description and segment formats
Information technology — Dynamic adaptive streaming over HTTP (DASH) — Part 1: Media presentation description and segment formats
This document primarily specifies formats for the Media Presentation Description and Segments for dynamic adaptive streaming delivery of MPEG media over HTTP. It is applicable to streaming services over the Internet.
Technologies de l'information — Diffusion en flux adaptatif dynamique sur HTTP (DASH) — Partie 1: Description de la présentation et formats de remise des médias
General Information
Relations
Standards Content (Sample)
INTERNATIONAL ISO/IEC
STANDARD 23009-1
Fourth edition
2019-12
Information technology — Dynamic
adaptive streaming over HTTP
(DASH) —
Part 1:
Media presentation description and
segment formats
Technologies de l'information — Diffusion en flux adaptatif
dynamique sur HTTP (DASH) —
Partie 1: Description de la présentation et formats de remise des médias
Reference number
ISO/IEC 23009-1:2019(E)
©
ISO/IEC 2019
---------------------- Page: 1 ----------------------
ISO/IEC 23009-1:2019(E)
COPYRIGHT PROTECTED DOCUMENT
© ISO/IEC 2019
All rights reserved. Unless otherwise specified, or required in the context of its implementation, no part of this publication may
be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting
on the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address
below or ISO’s member body in the country of the requester.
ISO copyright office
CP 401 • Ch. de Blandonnet 8
CH-1214 Vernier, Geneva
Phone: +41 22 749 01 11
Fax: +41 22 749 09 47
Email: copyright@iso.org
Website: www.iso.org
Published in Switzerland
ii © ISO/IEC 2019 – All rights reserved
---------------------- Page: 2 ----------------------
ISO/IEC 23009-1:2019(E)
Contents
Foreword . vii
Introduction . ix
1 Scope .1
2 Normative references .1
3 Terms, definitions, abbreviated terms and conventions .2
4 Overview .9
4.1 System description .9
4.2 DASH Client model. 10
4.3 DASH data model overview . 11
4.4 Protocols . 14
4.5 Media stream and Representation properties . 15
4.5.1 Switching and Random Access Support . 15
4.5.2 Media stream access points . 15
4.5.3 Non-overlapping Segments and Subsegments . 17
4.5.4 Conforming Segment track . 17
4.6 Brands . 17
4.7 Schemes . 18
5 Media Presentation . 20
5.1 General . 20
5.2 Media Presentation Description . 21
5.2.1 General . 21
5.2.2 Schema . 22
5.2.3 Elements and Attributes added in revisions and amendments . 22
5.3 Hierarchical data model . 25
5.3.1 General . 25
5.3.2 Period . 31
5.3.3 Adaptation Sets . 37
5.3.4 Media content component . 48
5.3.5 Representation . 49
5.3.6 Sub-Representation . 57
5.3.7 Common attributes and elements . 59
5.3.8 Subsets . 66
5.3.9 Segments and Segment information . 67
5.3.10 Label and Group Label . 89
5.3.11 Preselection . 90
5.3.12 Initialization Set, Group and Presentation . 96
5.4 Media Presentation Description updates . 101
5.4.1 General . 101
5.4.2 MPD Reset . 102
5.5 MPD assembly . 103
5.5.1 General . 103
5.5.2 Syntax and semantics . 103
5.5.3 Processing . 104
5.6 Base URL Processing . 105
5.6.1 Overview . 105
5.6.2 Semantics . 105
5.6.3 XML syntax . 106
5.6.4 Reference resolution . 107
© ISO/IEC 2019 – All rights reserved iii
---------------------- Page: 3 ----------------------
ISO/IEC 23009-1:2019(E)
5.6.5 Alternative base URLs. 107
5.7 Program information . 107
5.7.1 Overview . 107
5.7.2 Semantics . 108
5.7.3 XML syntax . 108
5.8 Descriptors . 109
5.8.1 General . 109
5.8.2 Semantics of generic descriptor . 109
5.8.3 XML syntax of generic descriptor . 110
5.8.4 Specific descriptors . 110
5.8.5 Specific scheme definitions . 113
5.9 DASH metrics descriptor . 124
5.9.1 Overview . 124
5.9.2 Semantics . 124
5.9.3 XML syntax . 125
5.9.4 Metric reporting . 125
5.10 Events . 125
5.10.1 Overview . 125
5.10.2 MPD Events . 126
5.10.3 Inband Event Signalling . 130
5.10.4 DASH-specific events. 133
5.11 MPD Chaining . 137
5.11.1 General . 137
5.11.2 Regular Chaining . 137
5.11.3 Fallback Chaining . 138
5.12 Producer Reference Time . 139
5.12.1 General . 139
5.12.2 Semantics . 139
5.12.3 XML Syntax . 141
5.13 Leap seconds . 141
5.13.1 Overview . 141
5.13.2 Semantics . 142
5.13.3 XML-Syntax . 143
5.13.4 Leap second information updates . 143
5.14 Content Popularity Rate . 143
5.14.1 General . 143
5.14.2 Semantics . 144
5.14.3 XML syntax . 145
6 Segment formats . 146
6.1 General . 146
6.2 Segment types . 146
6.2.1 General . 146
6.2.2 Initialization Segment . 147
6.2.3 Media Segment . 147
6.2.4 Index Segment . 149
6.2.5 Bitstream Switching Segment . 149
6.2.6 Missing Content Segment . 149
6.3 Segment formats for ISO base media file format . 149
6.3.1 General . 149
6.3.2 Preliminaries: Refinements of generic concepts . 149
6.3.3 Initialization Segment format . 150
6.3.4 Media Segment types . 150
6.3.5 Self-Initializing Media Segment formats . 152
iv © ISO/IEC 2019 – All rights reserved
---------------------- Page: 4 ----------------------
ISO/IEC 23009-1:2019(E)
6.4 Segment formats for MPEG-2 transport streams . 153
6.4.1 General . 153
6.4.2 Preliminaries: Refinements of generic concepts . 153
6.4.3 Initialization Segment types and formats . 154
6.4.4 Media Segment types and formats. 155
6.4.5 Bitstream Switching Segment . 156
6.4.6 Index Segment. 156
6.4.7 Boxes used with MPEG-2 TS Index Segments . 158
7 Combined semantics of MPD and Segment formats . 159
7.1 Overview . 159
7.2 General . 160
7.2.1 Media Presentation timeline . 160
7.2.2 Segment Index. 161
7.2.3 Segment alignment. 161
7.2.4 Subsegment alignment . 161
7.3 Media Presentation based on the ISO base media file format . 161
7.3.1 General . 161
7.3.2 Media presentation timeline . 162
7.3.3 Authoring Rules for specific MPD attributes . 162
7.3.4 Sub-Representations . 163
7.3.5 Segment Timeline without Segment Index . 163
7.4 Media Presentation based on MPEG-2 TS . 163
7.4.1 General . 163
7.4.2 Media presentation timeline . 164
7.4.3 Authoring rules for specific MPD attributes . 164
7.4.4 Sub-Representations . 165
8 Profiles. 165
8.1 Definition . 165
8.2 Full profile . 167
8.2.1 General . 167
8.2.2 Media Presentation Description constraints . 167
8.2.3 Segment format constraints . 167
8.3 ISO Base media file format On Demand profile . 167
8.3.1 General . 167
8.3.2 Media Presentation Description constraints . 167
8.3.3 Segment format constraints . 168
8.4 ISO Base media file format live profile . 169
8.4.1 General . 169
8.4.2 Media Presentation Description constraints . 169
8.4.3 Segment format constraints . 170
8.5 ISO Base media file format main profile . 170
8.5.1 General . 170
8.5.2 Media Presentation Description constraints . 170
8.5.3 Segment format constraints . 171
8.6 MPEG-2 TS main profile . 171
8.6.1 General . 171
8.6.2 Media Presentation Description constraints . 172
8.6.3 Segment format constraints . 172
8.6.4 Comments and recommendations . 172
8.7 MPEG-2 TS simple profile . 173
8.7.1 General . 173
8.7.2 Media Presentation Description constraints . 173
© ISO/IEC 2019 – All rights reserved v
---------------------- Page: 5 ----------------------
ISO/IEC 23009-1:2019(E)
8.7.3 Segment format constraints . 173
8.7.4 Recommendations . 174
8.8 ISO Base media file format extended live profile . 174
8.8.1 General . 174
8.8.2 Media Presentation Description constraints . 174
8.8.3 Segment format constraints . 175
8.8.4 Inband Events . 175
8.9 ISO Base media file format extended On Demand profile . 175
8.9.1 General . 175
8.9.2 Media Presentation Description constraints . 176
8.9.3 Segment format constraints . 177
8.10 ISO Base media file format common profile . 177
8.10.1 General . 177
8.10.2 Media Presentation Description constraints . 177
8.10.3 Segment format constraints . 178
8.11 ISO Base media file format broadcast TV profile . 178
8.11.1 General . 178
8.11.2 Media Presentation Description constraints . 178
8.11.3 Segment format constraints . 180
8.11.4 MPD Updates and Inband Event Streams . 180
Annex A (informative) Example DASH Client behaviour . 181
Annex B (normative) MPD schema . 191
Annex C (normative) MIME type registration for MPD . 192
Annex D (normative) DASH Metrics . 196
Annex E (normative) Byte range requests with regular HTTP GET methods . 204
Annex F (informative) Guidelines for extending DASH with other delivery formats . 206
Annex G (informative) MPD Examples and MPD Usage .
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.