9 DASH – Usage of 3GPP File Format
26.2473GPPProgressive Download and Dynamic Adaptive Streaming over HTTP (3GP-DASH)Release 17Transparent end-to-end Packet-switched Streaming Service (PSS)TS
9.1 Introduction
3GPP Dynamic Adaptive Streaming over HTTP uses many elements of fragmented 3GP files to define the Segment formats. This provides Segments according to the requirements defined in clause 8.4.4.1 and enables reuse of existing content, easy encoding and recording, etc. This clause introduces how to use the 3GPP file format as specified in
TS 26.244 [4] for DASH Segment formats.
9.2 Segment Types and Formats
9.2.1 Introduction
3GP-DASH defines a Segment format that is used in the delivery of media data over HTTP. A Segment shall contain one or more boxes in accordance with the boxed structure of the ISO-base media file format [11].
For 3GP-DASH the following applies:
– In all cases for which a Representation contains more than one Media Segment, the following applies:
– The Initialization Segment as defined in clause 9.2.2 shall be present. The Initialization Segment shall be available for the 3GP-DASH client before any Media Segment is processed within the Representation.
– Media Segments shall not be self-initializing. The Media Segment format is defined in clause 9.2.3.
– In case a Representation contains only a single Media Segment, then either one of the following two options is used:
1) An Initialization Segment as defined in clause 9.2.2 and one Media Segment as defined in clause 9.2.3.
2) One Self-Initializing Media Segment as defined in clause 9.2.4.
9.2.2 Initialization Segment
The Initialization Segment is conformant with the 3GPP file format, adaptive streaming profile and shall carry "3gh9" as compatibility brand.
The Initialization Segment shall conform to the Initialization Segment in ISO/IEC 23009-1 [43], clause 6.3.3.
9.2.3 Media Segment
9.2.3.1 General
A Media Segment contains and encapsulates media streams that are either described within this Media Segment or described by the Initialization Segment of this Representation or both.
In addition, a Media Segment shall conform to the general format type in ISO/IEC 23009-1 [43], clause 6.2.3.1.
9.2.3.2 Subsegments and Segment Index
Media Segments may contain multiple Subsegments documented by the Segment Index.
Subsegments and Segment Index shall follow the definition in ISO/IEC 23009-1 [43], clause 6.2.3.2.
9.2.3.3 Subsegment Index
Media Subsegments may be indexed further to enable accessing different levels of Subsegments in a Media Subsegment. This Subsegment Index may also be provided in separate Index Segments together with the Segment Index.
Subsegment Index shall follow the definition in ISO/IEC 23009-1 [43], clause 6.2.3.3.
9.2.3.4 3GP-DASH Media Segment Format
A Media Segment conforming to the Media Segment Format for 3GP DASH shall carry ‘3gmA’ as a compatible brand and shall conform to the General format type in ISO/IEC 23009-1 [43], clause 6.3.4.2.
9.2.4 Self-Initializing Media Segment
A Self-Initializing Media Segment shall conform to the Self-Initializing Media Segment in ISO/IEC 23009-1 [43], clause 6.3.5.1.
9.2.5 Media Stream and Segment Properties
9.2.5.1 Media Stream Access Points
To be able to access a Representation, each of the media streams that are contained in the Representation requires Media Stream Access Points (SAPs). For the definition refer to ISO/IEC 23009-1 [43], clause 4.5.1.
9.2.5.2 Non-overlapping Segments and Subsegments
The property of "non-overlapping" Segments (respectively Subsegments) is used to define the terms Segment alignment and Subsegment alignment. The definition is provided in ISO/IEC 23009-1 [43], section 4.5.1.
9.2.5.3 Bitstream concatenation
The definition for bistream concatenation is provided in ISO/IEC 23009-1 [43], section 4.5.2.
9.3 Usage on Server and Client
3GP-DASH uses 3GP files according to the 3GP Adaptive-Streaming profile as specified in TS 26.244 [4]. Content may be prepared as 3GP files according to the 3GP Adaptive-Streaming profile. Initialization Segments and Media Segments may be generated by segmenting such 3GP files. Segment Index ‘sidx’ boxes may be pre-contained in 3GP files or may be generated during the segmentation process. Clients may store a concatenation of a received Initialization Segment and a sequence of Media Segments from the same Representation to create a compliant 3GP file according to the Adaptive Streaming profile without accessing any media samples.
NOTE: As specified in TS 26.244, the MPD may be linked or embedded in the ‘meta’ box of the ‘moov’ box. This enables clients to access the MPD from a 3GP file that was made available from other means than 3GP-DASH (e.g. progressive download).
9.4 Segment Properties with MPD constraints
9.4.1 General
9.4.1.1 Introduction
The content, especially the Segments across Representations at the same media time may have been prepared in a joint or at least coordinated manner. To expose these properties to the client, certain flags in the MPD can be set to true to indicate such coordinated content preparation. Clients consuming 3GP-DASH formatted media presentations may benefit from properly authored content when switching between or presenting Representations.
9.4.1.2 Media Presentation Timeline
One of the key features in DASH is that encoded versions of different media components share a common timeline. The presentation time of access unit within the media content is mapped to the global common presentation timeline for synchronization of different media components and to enable seamless switching of different coded versions of the same media components.
The requirements and recommendations in ISO/IEC 23009-1 [43], clause 7.2.1 and clause 7.3.2 shall apply for 3GP-DASH.
9.4.1.3 Segment Index
If a Segment Index is present in a Media Segment of one Representation within an Adaptation Set, then the constraints in ISO/IEC 23009-1 [43], clause 7.2.2 shall apply for 3GP-DASH.
9.4.2 Segment Alignment
No additional requirements beyond those stated in section 8.4.3.3 are defined.
9.4.3 Bitstream Switching
If the @bitstreamSwitching is set to ‘true’ for a set of Representations within an Adaptation Set, the conditions in ISO/IEC 23009-1 [43], clause 7.3.3.2 shally apply.
9.4.4 Sub-Representation
If a SubRepresentation element is present in a Representation in the MPD and the SubRepresentation@level is present, then the conditions in ISO/IEC 23009-1 [43], clause 7.3.4 shally apply.