Guidelines for Implementation:
DASH-IF Interoperability Points

 

April 09, 2018

DASH Industry Forum

 

 

Version 4.2

 

 



Scope

The scope of the DASH-IF InterOperability Points (IOPs) defined in this document is to provide support for high-quality video distribution for over the top services using H.264/AVC and H.265/HEVC. Both live and on-demand services are supported. The specified features enable relevant use cases including on-demand, live services, ad insertion, trick modes, seek preview, content protection and subtitling. Extensions for multi-channel audio and next generation audio with different codecs as well as extensions to video different codecs and Ultra High Definition are defined.

Any identified bugs or missing features may be submitted through the DASH-IF issue tracker at https://gitreports.com/issue/Dash-Industry-Forum/DASH-IF-IOP.

Note that version 4.2 is published as an add on to v4.1, but with the next version it is expected that a either a multipart version or a restructured version will be generated, with a major editorial updates. The new version is expected to be available by the fall of 2018.

Disclaimer

This is a document made available by DASH-IF.  The technology embodied in this document may involve the use of intellectual property rights, including patents and patent applications owned or controlled by any of the authors or developers of this document. No patent license, either implied or express, is granted to you by this document. DASH-IF has made no search or investigation for such rights and DASH-IF disclaims any duty to do so. The rights and obligations which apply to DASH-IF documents, as such rights and obligations are set forth and defined in the DASH-IF Bylaws and IPR Policy including, but not limited to, patent and other intellectual property license rights and obligations. A copy of the DASH-IF Bylaws and IPR Policy can be obtained at http://dashif.org/.

The material contained herein is provided on an "AS IS" basis and to the maximum extent permitted by applicable law, this material is provided AS IS, and the authors and developers of this material and DASH-IF hereby disclaim all other warranties and conditions, either express, implied or statutory, including, but not limited to, any (if any) implied warranties, duties or conditions of merchantability, of fitness for a particular purpose, of accuracy or completeness of responses, of workmanlike effort, and of lack of negligence.

In addition, this document may include references to documents and/or technologies controlled by third parties. Those third party documents and technologies may be subject to third party rules and licensing terms.  No intellectual property license, either implied or express, to any third party material is granted to you by this document or DASH-IF.  DASH-IF makes no any warranty whatsoever for such third party material.

Note that technologies included in this document and for which no test and conformance materi-al is provided, are only published as a candidate technologies, and may be removed if no test material is provided before releasing a new version of this guidelines document. For the availability of test material, please check http://www.dashif.org.

Contents

Guidelines for Implementation:  DASH-IF Interoperability Points. i

Scope. 1

Disclaimer. 2

Contents. 3

List of Figures. 9

List of Tables. 10

Acronyms, abbreviations and definitions. 11

References. 14

1.       Introduction.. 1

2.       Context and Conventions. 3

2.1.        Relation to MPEG-DASH and other DASH specifications. 3

2.2.        Compatibility and Extensions to Earlier Versions. 4

2.2.1.         Summary of Version 3 Modifications. 4

2.2.2.         Backward-Compatibility Considerations. 7

2.3.        Use of Key Words. 7

2.3.1.         Background. 7

2.3.2.         Key Words. 7

2.3.3.         Mapping to DASH-IF Assets. 8

2.4.        Definition and Usage of Interoperability Points. 8

2.4.1.         Profile Definition in ISO/IEC 23009-1. 8

2.4.2.         Usage of Profiles. 9

2.4.3.         Interoperability Points and Extensions. 10

3.       DASH-Related Aspects. 10

3.1.        Scope. 10

3.2.        DASH Formats. 11

3.2.1.         Introduction. 11

3.2.2.         Media Presentation Description constraints for v1 & v2 Clients. 12

3.2.3.         Segment format constraints. 13

3.2.4.         Presence of Attributes and Elements. 14

3.2.5.         MPD Dimension Constraints. 15

3.2.6.         Generic Metadata. 15

3.2.7.         DASH Timing Model 15

3.2.8.         Bandwidth and Minimum Buffer Time. 18

3.2.9.         Trick Mode Support. 19

3.2.10.       Adaptation Set Constraints. 19

3.2.11.       Media Time Information of Segment 21

3.2.12.       Content Offering with Periods. 23

3.2.13.       Adaptation Set Media Type. 24

3.2.14.       Seek Preview and Thumbnail Navigation. 25

3.2.15.       Reference Resolution. 25

3.3.        Client Implementation Requirements and Guidelines. 26

3.3.1.         Overview.. 26

3.3.2.         DASH Client Guidelines. 26

3.3.3.         Seamless switching. 27

3.3.4.         DASH Client Requirements. 27

3.4.        Transport and Protocol-Related Issues. 27

3.4.1.         General 27

3.4.2.         Server Requirements and Guidelines. 28

3.4.3.         Client Requirements and Guidelines. 28

3.4.4.         Transforming Proxies and Other Adaptation Middleboxes. 28

3.5.        Synchronization Considerations. 29

3.6.        Considerations for Live Services. 29

3.7.        Considerations on Ad Insertion. 29

3.8.        Switching across Adaptation Sets. 29

3.9.        Annotation and Client Model for Content Selection. 30

3.9.1.         Introduction. 30

3.9.2.         Adaptation Set Labeling Options for Selection. 31

3.9.3.         Content Model 38

3.9.4.         Signalling Requirements and Recommendations. 40

3.9.5.         Client Processing Reference Model 44

4.       Live Services. 49

4.1.        Introduction. 49

4.2.        Overview Dynamic and Live Media Presentations. 49

4.3.        Dynamic Segment Download. 52

4.3.1.         Background and Assumptions. 52

4.3.2.         Preliminaries. 52

4.3.3.         Service Offering Requirements and Guidelines. 58

4.3.4.         Client Operation, Requirements and Guidelines. 67

4.3.5.         Additional DVB-DASH alignment aspects. 72

4.3.6.         Considerations on live edge. 72

4.4.        Simple Live Service Offering including MPD Updates. 73

4.4.1.         Background and Assumptions. 73

4.4.2.         Preliminaries. 74

4.4.3.         Service Offering Requirements and Guidelines. 75

4.4.4.         MPD-based Live Client Operation based on MPD.. 79

4.5.        MPD and Segment-based Live Service Offering. 80

4.5.1.         Preliminaries. 80

4.5.2.         Service Offering Requirements and Guidelines. 82

4.5.3.         Client Requirements and Guidelines. 86

4.6.        Provisioning of Live Content in On-Demand Mode. 88

4.6.1.         Scenario. 88

4.6.2.         Content Offering Requirements and Recommendations. 88

4.6.3.         Client Behavior. 89

4.6.4.         Transition Phase between Live and On-Demand. 90

4.7.        Availability Time Synchronization between Client and Server. 90

4.7.1.         Background. 90

4.7.2.         Service Provider Requirements and Guidelines. 90

4.7.3.         Client Requirements and Guidelines. 91

4.8.        Robust Operation. 92

4.8.1.         Background. 92

4.8.2.         Tools for Robust Operations. 92

4.8.3.         Synchronization Loss of Segmenter. 93

4.8.4.         Encoder Clock Drift. 93

4.8.5.         Segment Unavailability. 93

4.8.6.         Swapping across Redundant Tools. 94

4.8.7.         Service Provider Requirements and Guidelines. 94

4.8.8.         Client Requirements and Guidelines. 94

4.9.        Interoperability Aspects. 94

4.9.1.         Introduction. 94

4.9.2.         Simple Live Operation. 94

4.9.3.         Main Live Operation. 95

4.10.     Trick Mode for Live Services. 96

4.10.1.       Introduction. 96

4.10.2.       Service Offering Requirements and Recommendations. 96

4.10.3.       Client Implementation Guidelines. 96

4.10.4.       Conversion for Live-to-VoD for Trick Mode Adaptation Sets. 97

4.11.     Deployment Scenarios. 97

4.11.1.       Introduction. 97

4.11.2.       Reliable and Consistent-Delay Live Service. 97

4.11.3.       Relevant DASH-IF IOP Technologies. 99

4.11.4.       Proposed Service Configuration and Generation of the MPD and Segments based on a “Segment Stream”  104

4.11.5.       Client Support Considerations. 108

5.       Ad Insertion in DASH.. 109

5.1.        Introduction. 109

5.1.1.         General 109

5.1.2.         Definitions. 109

5.1.3.         DASH Concepts. 110

5.2.        Architectures. 113

5.3.        Server-based Architecture. 114

5.3.1.         Introduction. 114

5.3.2.         Mapping to DASH.. 114

5.3.3.         Workflows. 117

5.3.4.         Examples. 122

5.3.5.         Use of query parameters. 123

5.4.        App-based Architecture. 124

5.4.1.         Introduction. 124

5.4.2.         Mapping to DASH.. 125

5.4.3.         Workflows. 127

5.5.        Extensions for ad insertion. 128

5.5.1.         Asset Identifiers. 128

5.5.2.         Remote Periods. 128