Guidelines for Implementation: DASH-IF Interoperability Points

Living Document,

This version:
https://dashif.org/guidelines/
Issue Tracking:
GitHub
Editors:
DASH Industry Forum

1. Document editing notes

Documentation: https://dashif.org/DocumentAuthoring/

Example document repository: https://dashif.org/DocumentAuthoring/

Live discussion in #document-authoring on Slack.

Scope Disclaimer

2. Introduction

3. References

See v4.3 references

4. Conventions, Context, Terms and Definitions

4.1. Relation to MPEG-DASH

4.2. Conventions

see v4.3 and bug filed by Sander

4.3. Abbreviations

see v4.3

4.4. Terms and Definitions

see v4.3 (may be hotlinked in bikeshed, auto generated)

5. General DASH Features

5.1. Architecture

Reference other DASH activities (Ingest, CPIX, SAND, etc.)

(re-use low-latency architecture)

5.2. Formats

(new clause with some usage from clause 3.2.1)

5.2.1. MPD

5.2.2. Segments

5.2.3. Segment Addressing Schemes

5.3. Protocol Considerations

See clause 3.4 in v4.3

5.4. Location and Reference Resolution

See clause 3.2.15 in v4.3

5.5. Client-Server Synchronization

See clause 3.5 and 4.7 in v4.3

https://dashif-documents.azurewebsites.net//DASH-IF-IOP/pull/210/DASH-IF-IOP.html#timing-sync

5.6. Client Reference Model

Refer to dash.js and MSE

(new clause) point to CTA WAVE Device Playback

5.7. Media Presentation Data Model

5.7.1. Timing Model

See 3.2.7 and document from Sander

https://dashif-documents.azurewebsites.net//DASH-IF-IOP/pull/210/DASH-IF-IOP.html#timing-period

https://dashif-documents.azurewebsites.net//DASH-IF-IOP/pull/210/DASH-IF-IOP.html#timing-representation

5.7.2. Content Annotation and Selection

See 3.9 and document from Sander

5.7.3. Adaptive Switching

(Adaptation Set, segment and subsegment alignment)

https://dashif-documents.azurewebsites.net//DASH-IF-IOP/pull/210/DASH-IF-IOP.html#timing-segmentalignment

5.7.4. Segment Timing

See clause 4.3 as well as document from Sander 3.5-3.5.4

https://dashif-documents.azurewebsites.net//DASH-IF-IOP/pull/210/DASH-IF-IOP.html#timing-sampletimeline

5.8. Bandwidth Signaling

See clause 3.2.8

5.9. Service Types

See clause 3.6

On-Demand Services

5.10. Media in DASH

(new clause)

5.10.1. Media in one Period

5.10.2. Media Across Periods

5.10.3. Requirements and Recommendation for Media Codecs in DASH

5.11. Events

(new clause)

5.12. Remote Elements

(new clause)

Text from Sander 3.9

https://dashif-documents.azurewebsites.net//DASH-IF-IOP/pull/210/DASH-IF-IOP.html#timing-xlink

5.13. Profiles and Interop

Clause 2.4

5.14. Examples

Clause 2.4

6. On-Demand Services

Clause 3.10

7. Live Services

Clause 4, but reduced as some issues are moved to general clause

https://dashif-documents.azurewebsites.net//DASH-IF-IOP/pull/210/DASH-IF-IOP.html#timing-dynamic

8. Content Replacement and Ad Insertion

Newly developed in Ad Insertion TF

9. Content Protection and Security

Based on Clause

10. Video in DASH

(new clause adding all codecs in IOP)

(focusses on very specific issues following the general requirements from clause 4)

10.1. General

10.1.1. MPD and Adaptation Set Signaling

10.1.2. Segment Formats

10.2. H.264/AVC

(add a table with media profiles and reference CMAF) (create a clause with specific issues)

10.3. H.265/HEVC

(add a table with media profiles and reference CMAF) (create a clause with specific issues)

10.4. VP9

11. Audio in DASH

(new clause adding all codecs in IOP) (focusses on very specific issues following the general requirements from clause 4)

11.1. General

11.1.1. MPD and Adaptation Set Signaling

11.1.2. Segment Formats

11.2. (Codec 1)

(add a table with media profiles and reference CMAF) (create a clause with specific issues)

11.3. (Codec 2)

(add a table with media profiles and reference CMAF) (create a clause with specific issues)

12. Subtitles in DASH

(new clause adding all codecs in IOP) (focusses on very specific issues following the general requirements from clause 4)

12.1. General

12.1.1. MPD and Adaptation Set Signaling

12.1.2. Segment Formats

12.2. (Codec 1)

(add a table with media profiles and reference CMAF) (create a clause with specific issues)

12.3. (Codec 2)

(add a table with media profiles and reference CMAF) (create a clause with specific issues)

13. Other DASH Features

13.1. Seek Preview and Thumbnail Navigation

14. Annex Exclusions from MPEG-DASH

This section list the exclusions and forbidden options of MPEG-DASH. Sanders 3.10 Forbidden techniques goes here

Conformance

Conformance requirements are expressed with a combination of descriptive assertions and RFC 2119 terminology. The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in the normative parts of this document are to be interpreted as described in RFC 2119. However, for readability, these words do not appear in all uppercase letters in this specification.

All of the text of this specification is normative except sections explicitly marked as non-normative, examples, and notes. [RFC2119]

Examples in this specification are introduced with the words “for example” or are set apart from the normative text with class="example", like this:

This is an example of an informative example.

Informative notes begin with the word “Note” and are set apart from the normative text with class="note", like this:

Note, this is an informative note.

References

Normative References

[RFC2119]
S. Bradner. Key words for use in RFCs to Indicate Requirement Levels. March 1997. Best Current Practice. URL: https://tools.ietf.org/html/rfc2119