TTA Standard Enacted: 2004. 8.10
TTAS.KO – 07.0026
Radio Broadcasting Systems; Specification of the video services for VHF Digital Multimedia Broadcasting (DMB)
to mobile, portable and fixed receivers
i
Preface
1. Purpose of Standard
This standard has been prepared to define the video services for the terrestrial digital multimedia broadcasting (T-DMB) in the VHF band.
2. Referenced Recommendations and/or Standards
2.1. International standards
[1] ETSI EN 300 744: “Digital Video Broadcasting (DVB); Framing structure, channel coding and modulation for digital terrestrial television”
[2] ETSI EN 300 401 v1.3.3: “Radio Broadcasting Systems; Digital Audio Broadcasting (DAB) to mobile, portable and fixed receivers”
[3] ISO/IEC 13818-1: 2000 “Information technology -- Generic coding of moving pictures and associated audio information: Systems”
[4] ISO/IEC 14496-1: 2004 “Information technology -- Coding of audio-visual objects -- Part 1: Systems”
[5] ISO/IEC 14496-3: 2001 “Information technology -- Coding of audio-visual objects -- Part 3: Audio”
[6] ITU-T Rec. H.264 | ISO/IEC 14496-10 “Information technology -- Coding of audio-visual objects -- Part 10: Advanced Video Coding”
[7] Internet Streaming Media Alliance Implementation Specification Version 1.0, 28 August, 2001
2.2. Domestic standards
[1] KS X 1005-1 “Information technology -- Universal Multiple-Octet Coded Character Set (UCS) -- Part 1: Architecture and Basic Multilingual Plane“
[2] KS X 1001 “CODE FOR INFORMATION INTERCHANGE(HANGEUL AND HANJA)“
[3] KS X 1002 “ EXTENSION CODE SETS FOR INFORMATION INTERCHANGE ”
[4] TTAS.KO-07.0024 “Terrestrial digital audio broadcasting”
3. Relationship to International Standards (Recommendations)
3.1. Association with international standards
This standard refers to ISO/IEC 13818-1, ISO/IEC 14496-1, ISO/IEC 14496-3, ISO/IEC 14496-10 and ETSI EN 300 401 V1.3.3.
ii
3.2. Application range
This standard specifies the video services for the terrestrial digital multimedia broadcasting (T-DMB) in the VHF band, which include the video and associated audio coding algorithm, multiplexing, and outer channel coding. This standard includes specification of optional auxiliary data services.
3.3. Additional items
For the video services, this standard put some restrictions on ISO/IEC 13818-1, ISO/IEC 14496-1, ISO/IEC 14496-3, and ISO/IEC 14496-10, which are described in the sections of chapter 3 of this standard.
4. Statement of Intellectual Property Right
TBD
5. Statement of Conformance Testing and Certification
None
6. History of Standard
Version Issue Date Contents
1.0 2004. 08. 10. Established
iii
Contents
1 General Provisions...............................................................................................................1
1.1 Purpose .................................................................................................................................1
1.2 Scope.....................................................................................................................................1
2 Definitions and Abbreviations ............................................................................................1
2.1 Definitions.............................................................................................................................1
2.2 Abbreviations........................................................................................................................2
3 Requirements for Video Services.......................................................................................4
3.1 Reception Performance .......................................................................................................4
3.2 Video Objects........................................................................................................................4
3.3 Audio Objects .......................................................................................................................4
3.4 Auxiliary Data (Optional) .....................................................................................................4
3.5 Service Delays ......................................................................................................................5
4 Video Service Specification ................................................................................................6
4.1 System Architecture ............................................................................................................6
4.2 Transport Protocol Specification........................................................................................9
4.3 Composition of MPEG-4 Contents...................................................................................14
4.4 Audio Specification...........................................................................................................15
4.5 Video Specification ...........................................................................................................16
4.6 Auxiliary Data Specification (Optional)...........................................................................17
4.7 Outer Coding......................................................................................................................17
4.8 Outer Interleaver................................................................................................................18
Annex A (Informative) Transport rate available for a video service .....................................19
Annex B (Informative) An example of the IOD/OD/BIFS in the case where a combination of a single audio object and a single video object is broadcasted....20
B.1 Summary ............................................................................................................................20
B.2 IOD (binary syntax and field values) ...............................................................................20
B.3 OD (binary syntax and values).........................................................................................24
B.4 BIFS ....................................................................................................................................36
Annex C (Informative) Content Access Procedure.................................................................37
iv
List of figures
Figure 4.1-1. Conceptual architecture for the video services...........................................................6
Figure 4.1-2. Conceptual transmission architecture for the video services .....................................7
Figure 4.1-3. Conceptual architecture of the video multiplexer........................................................7
Figure 4.1-4. Example multiplexing architecture for the video services...........................................9
Figure 4.7-1. Structure of an MPEG-2 TS packet encoded by RS(204,188,t=8).........................17
Figure 4.8-1. Conceptual diagram of the outer interleaver and deinterleaver..............................18
Figure 4.8-2. Data structure after outer interleaving ....................................................................18
v
List of tables
Table 4.2-1. Structure of a TS packet ..............................................................................................9
Table 4.2-2. Structure of the adaptation field of an ISO/IEC 13818-1 TS packet ........................10
Table 4.2-3.Structure of an ISO/IEC 13818-1 PES packet ..........................................................11
Table 4.2-4. Structure of a PMT...................................................................................................12
Table 4.3-1. Object types .............................................................................................................14
Table 4.3-2. Stream types ............................................................................................................15
Table 4.4-1. Restrictions on audio objects ...................................................................................15
Table 4.5-1. Resolutions supported .............................................................................................16
1
1 General Provisions
1.1 Purpose
This standard defines the video services for the terrestrial digital multimedia broadcasting (T-DMB) in the VHF band..
This standard defines the video services based on TTAS.KO-07.0024.
1.2 Scope
This standard defines specifications on multimedia data compression, multiplexing, and forward error correction used to provide video services.
The multimedia data this standard deals with include audio, video, and optional auxiliary data.
2 Definitions and Abbreviations
2.1 Definitions
“Service requirements” imply the basic conditions that the T-DMB service should satisfy.
“Video service” implies a service composed of basic video provided by the T-DMB, the audio associated with the video, and optional auxiliary data
“Audio service” implies a service composed of the speech and audio possibly with the auxiliary data produced by the audio compression algorithm and the multiplexing method as defined in TTAS.KO-07.0024.
“Data service” implies a service that delivers in a digital format any information, which is independent of the video and audio services that the T-DMB provides as basic services.
“Logical channel” implies a channel that can be multiplexed in multiples as a service component defined in TTAS.KO-07.0024 and delivered through a physical channel with the transmission bandwidth of 1.536 MHz.
“Transort rate available for video services” implies the maximum bit-rate of the outer-coded TS that can be fed as input to the stream mode data path defined in TTAS.KO-07.0024.
“Synchronization (Sync) layer” implies the Sync Layer (SL) defined in ISO/IEC 14496-1 that provides a combined transmission of timing and synchronization information with elementary streams (ESs).
“Transport stream (TS) multiplexer” implies the device that assigns a logical channel for each of the multiple ESs that belong to a program and combines all the logical channels into a transport stream (TS) defined in ISO/IEC 13818-1 for the delivery through a single transmission path.
“Random access” implies the capability of receiving a service from an arbitrary point in its timeline rather than being confined to progressively receiving it from its beginning.
“Video object” implies the data encoded by the video compression algorithm used for video services.
2
“Audio object” implies the data encoded by the audio compression algorithm used for video services.
“Auxiliary data” implies the data encoded by the auxiliary data compression algorithm used for video services. Examples are scene description data and graphics data.
“Interactive service” implies a service in which the users can select or control the broadcast contents.
2.2 Abbreviations
AU: Access Unit
AVC: Advanced Video Coding
BIFS: Binary Format for Scene
BSAC: Bit Sliced Arithmetic Coding
CD : Compact Disc
CIF: Common Interleaved Frame
CIF: Common Intermediate Format
CTS: Composition Time Stamp
DAB: Digital Audio Broadcasting
DMB: Digital Multimedia Broadcasting
DTS: Decoding Time Stamp
EN: European Standard
ER: Error resilience or Error Resilient (as appropriate)
ES: Elementary Stream
ETSI: European Telecommunications Standards Institute
FIC: Fast Information Channel
FIDC: Fast Information Data Channel
FIFO: First-In, First-Out
FM : Frequency Modulation
ID: IDentification
IDR: Instantaneous Decoding Refresh
IMDCT: Inverse Modified Discrete Cosine Transform
IOD: Initial Object Descriptor
IPI: Intellectual Property Identification
IPMP: Intellectual Property Management and Protection
3
ISO/IEC: International Organization for Standardization /International Electrotechnical Commission
JPEG: Joint Photographic Expert Group
LCD : Liquid Crystal Display
MPEG: Moving Picture Experts Group
MSC: Main Service Channel
MV: Motion Vector
OCR: Object Clock Reference
OD: Object Descriptor
OFDM: Orthogonal Frequency Division Multiplex
PAT: Program Association Table
PCR: Program Clock Reference
PES: Packetized Elementary Stream
PID : Program Identifier
PMT: Program Map Table
PSI: Program Specific Information
PTS: Presentation Time Stamp
QCIF: Quarter CIF
QVGA: Quarter Video Graphics Array
RS: Reed-Solomon
SBA: Segmented Binary Arithmetic coding
SI: Service Information
SL : Synchronization Layer
T-DMB : Terrestrial Digital Multimedia Broadcasting
TMC: Traffic Message Channel
TS: Transport Stream
URL : Uniform Resource Locator
VCD : Video Compact Disc
VRML : Virtual Reality Modeling Language
WDF: Wide DMB Format
4
3 Requirements for Video Services
3.1 Reception Performance
3.1.1 Reception area
The reception area shall cover the whole territory of the Republic of Korea.
3.1.2 Reception environment
Both the time ratio and the space ratio shall be more than 90 in mobile environment within the reception area.
3.1.3 Reception performance in the mobile environment within reception area
The video service can be received when a receiver is moving upto a maximum speed of 200 km/h.
3.2 Video Objects
3.2.1 Video format
The video service shall support the maximum pixel resolution of 352x288@30fps.
3.2.2 Video quality
The video service shall provide VCD-quality video on 7-inch LCD displays.
3.2.3 Video random access
The interval between any two adjacent video random access points shall not exceed 2 seconds.
3.3 Audio Objects
3.3.1 Audio format
The audio associated with the video (hereafter called “associated audio”) shall support stereo audio signals with the maximum sampling rate of 48 kHz.
3.3.2 Audio quality
The associated audio shall support upto CD-quality audio. The quality of the associated audio shall be better than that of analog FM audio.
3.3.3 Audio random access
The interval between any two adjacent audio random access points shall not exceed 50 ms.
3.4 Auxiliary Data (Optional)
3.4.1 Service format
Supplemental information shall be provided.
Interactive services shall be provided.
5
3.4.2 Random access
The interval between any two adjacent random access points for an auxiliary data service shall not exceed 0.5 seconds.
3.5 Service Delays
3.5.1 Maximum service delay
The power-up delay shall be no greater than 2 seconds. (Note: The delay does not include start-up time of the operating system in a receiver.)
3.5.2 Delays between audio-visual objects
The delay of audio objects relative to the corresponding video objects shall not exceed -20 ~ +40 ms.1
The delay of auxiliary data relative to the corresponding video objects shall not exceed -300 ~ + 300 ms.
3.5.3 Channel change delays
The channel change delays shall be no greater than 1.5 seconds. (Note: When channels are changed within the same ensemble, the channel change delay shall not exceed 1 second.)
1 Here, the “-” delay denotes the case where audio objects are presented earlier than the corresponding video objects, while the “+” delay represents the opposite case.
6
4 Video Service Specification
4.1 System Architecture
4.1.1 Summary
This chapter defines the system architecture for the DMB video services. The system for the DMB video services has the architecture that transmits MPEG-4 contents encapsulated using “MPEG-4 on MPEG-2 TS” specification through the stream mode of TTAS.KO-07.0024 as illustrated in Figure 4.1-1.
Stream Mode of TTAS.KO-07.0024
Composition and Rendering
Display andUser Interaction
CompressionLayer
DeliveryLayer
Interactive Audiovisual Scene
MPEG-2 TS (PES)
Sync Layer
ObjectDescriptor
SceneDescriptionInformation
AV ObjectsData
UpstreamInformation
SL SL SL SL SL SL
…
Outer Coder (RS + Interleaver)
Figure 4.1-1. Conceptual architecture for the video services
4.1.2 Video service transmission architecture
The conceptual transmission architecture for the video services is shown in Figure 4.1-2.
The video, audio, and the auxiliary data information for a video service are multiplexed into an MPEG-2 TS and further outer-coded by the video multiplexer. The video multiplexer is described in 4.1.3 of this document. .
The multiplexed (and outer-coded) stream is transmitted by the DMB transmission mechanism defined in TTAS.KO-07.0024.
The video data stream utilizes the stream mode defined by the DMB transmission mechanism defined in TTAS.KO-07.0024.
7
MainService(MSC)
Multiplexer
TimeInterleaver
ConvolutionalEncoder
EnergyDispersalScrambler
Fast Information (FIC) Path
VideoMultiplexer
StreamMode
VideoService
FIC Data service
VHF Digital Radio Broadcasting Transmission System (TTAS.KO-07.0024)
CIFs
OptionalConditional
AccessScrambler
Service Information (SI) Path
General DAB PathDAB Audio Frame Path
General DAB PathPacket mode data Path
Trans-missionframe
Multiplexer
PacketDataService
AudioProgramService
ServiceInformation
MultiplexerControlData
OFDMSignal
Generator
VideoTransmissionSignal
Figure 4.1-2. Conceptual transmission architecture for the video services
4.1.3 Video muliplexer architecture
The conceptual architecture of the video multiplexer for a video service is shown in Figure 4.1-3.
IODGenerator
OD/BIFSGenerator
AVCVideo
Encoder
BSACAudio
Encoder
AUXData
SL
Packetizer
OD/BIFSStream
VideoES
AudioES
AUX DataES
IOD Data
SectionG
enerator
OD/BIFSSL Packet
PE
SPacketizer
VideoSL Packet
AudioSL Packet
AUX dataSL Packet
TSM
ultiplexer
PSI Section14496 Section
PESPacket
Outer
Encoder
RS
(204,188)
MPEG-2TS
Outer
ConvolutionalInterleaver
SL
Packetizer
SL
Packetizer
SL
Packetizer
PES
Packetizer
PE
SP
acketizer
Figure 4.1-3. Conceptual architecture of the video multiplexer
8
The IOD generator creates IODs that comply with the ISO/IEC 14496-1 standard.
The OD/BIFS generator creates OD/BIFS streams that comply with the ISO/IEC 14496-1 standard. (Refer to 4.3 of this document.)
The video encoder generates an encoded bitstream compliant with the H.264/AVC standard by performing data compression processing of the input video signal. (Refer to 4.5 of this document.)
The audio encoder generates an encoded bitstream compliant with the ISO/IEC 14496-3 BSAC standard by performing data compression processing of the input audio signal. (Refer to 4.4 of this document.)
Each SL packetizer generates an SL packet stream, i.e. a sychronization packet stream, compliant with ISO/IEC 14496-1 System standard for each input media stream. (Refer to 4.2 of this document.)
The section generator (PSI generator) creates sections compliant with ISO/IEC 13818-1 standard for the input IOD/OD/BIFS. (Refer to 4.2 of this document.)
Each PES packetizer generates a PES packet stream compliant with ISO/IEC 13818-1 standard for each SL packet stream. (Refer to 4.2 of this document.)
The TS multiplexer combines the input sections and PES packet streams into a single MPEG-2 transport stream (TS) complying with ISO/IEC 13818-1 standard. (Refer to 4.2 of this document.)
The outer encoder attaches additional data due to Reed-Solomon (RS) codes for error correction to each packet in the MPEG-2 TS multiplexed data stream. (Refer to 4.7 of this document.)
The outer-coded data stream is interleaved by the outer interleaver, which is a convolutional interleaver (Refer to 4.8 of this document), and is output as a video service stream.
4.1.4 Interface with TTAS.KO-07.0024
The transport rate of the video service streams that are input to the stream mode of the DMB transmission mechanism defined in TTAS.KO-07.0024 shall be a multiple of 8 kbps. The transport rates, available for the video service streams within a single ensemble, are listed in Annex A of this document.
4.1.5 Example multiplexing architecture for video services
An example multiplexing architecture for the video services is illustrated in Figure 4.1-4. In this example the ensemble with the label “Video Service Ensemble 1” delivers several services including those labeled as “Alpha 1 Radio,” “Beta Radio,” and “Alpha 2 Radio.” The first service labeled as “Alpha 1 Radio” is an audio service complying with TTAS.KO-07.0024 and is composed of one audio as the primary service component and two secondary service components which are a traffic message channel (TMC) and a service information (SI) channel. The second service labeled as “Beta Radio” is a video service complying with this standard and is composed of one video as the primary service component and one secondary audio as a secondary service component. The third service labeled as “Alpha 2 Radio” illustrates an example where the architecture allows switching between a video service and an audio service, if necessary.
9
Figure 4.1-4. Example multiplexing architecture for the video services
4.2 Transport Protocol Specification
4.2.1 Summary
The ISO/IEC 13818-1 layer plays the role of multiplexing video, audio, and auxiliary data for a single program. It doesn’t support the conditional access scheme defined in ISO/IEC 13818-1.2 Also, it uses PCR for system synchronization. The ISO/IEC 14496-1 MPEG-4 System layer provides synchronization among ESs using OCR, CTS, and DTS together with the PCR described in 1.1 above. In addition, it provides linkage among ESs that constitute a video service and uses scene description information for the composition of a video service. And it uses the SL packetization, but it doesn’t utilize FlexMux multiplexing.
4.2.2 MPEG-2 TS packet specification
A TS packet shall have the structure shown in Table 4.2-1.3
Table 4.2-1. Structure of a TS packet
Syntax Number of Bits
Restrictions
Transport_packet(){ sync_byte 8 transport_error_indicator 1 payload_unit_start_indicator 1 transport_priority 1 PID 13 transport_scrambling_control 2 ‘00’ adaptation_field_control 2 continuity_counter 4
2 Among PSI, CAT is not used. 3 In the table, restrictions are described only when they are to be imposed.
10
if(adaptation_field_control = = '10' || adaptation_field_control = = '11'){
adaptation_field() } if(adaptation_field_control = = '01' || adaptation_field_control = = '11') {
for (i=0; i<N; i++){ Data_byte 8 } } }
The adaptation field within a TS packet shall have the structure shown in Table 4.2-2.
Table 4.2-2. Structure of the adaptation field of an ISO/IEC 13818-1 TS packet
Syntax Number of Bits
Restrictions
adaptation_field() { adaptation_field_length 8 if (adaptation_field_length>0) { Discontinuity_indicator 1 random_access_indicator 1 elementary_stream_priority_indicator 1 PCR_flag 1 OPCR_flag 1 ‘0’ splicing_point_flag 1 transport_private_data_flag 1 adaptation_field_extension_flag 1 ‘0’ if (PCR_flag = = '1') { program_clock_reference_base 33 Reserved 6 program_clock_reference_extension 9 } if (OPCR_flag = = '1') { not used } if (splicing_point_flag = = '1') { splice_countdown 8 } if (transport_private_data_flag = = '1') { transport_private_data_length 8 for (i=0; i<transport_private_data_length; i++) { Private_data_byte 8 } } if (adaptation_field_extension_flag = = '1') { not used } for (i=0; i<N; i++) { stuffing_byte 8 } } }
11
4.2.3 MPEG-2 PES packet specification
A PES packet shall have the structure shown in Table 4.2-3.
Table 4.2-3.Structure of an ISO/IEC 13818-1 PES packet
Syntax Number of Bits
Restrictions
PES_packet() { packet_start_code_prefix 24 stream_id 8 0xFA PES_packet_length 16 if (stream_id !=program_stream_map && stream_id !=padding_stream && stream_id !=private_stream_2 && stream_id !=ECM && stream_id !=EMM && stream_id !=program_stream_directory && stream_id !=DSMCC_stream && stream_id !=ITU-T Rec. H.222.1 type E stream) {
'10' 2 PES_scrambling_control 2 ‘00’ PES_priority 1 data_alignment_indicator 1 Copyright 1 original_or_copy 1 PTS_DTS_flags 2 ‘10’ or ‘00’ ESCR_flag 1 ‘0’ ES_rate_flag 1 ‘0’ DSM_trick_mode_flag 1 ‘0’ additional_copy_info_flag 1 ‘0’ PES_CRC_flag 1 ‘0’ PES_extension_flag 1 ‘0’ PES_header_data_length 8 if (PTS_DTS_flags = = '10') { '0010' 4 PTS [32..30]4 3 marker_bit 1 PTS [29..15] 15 marker_bit 1 PTS [14..0] 15 marker_bit 1 }
if ( PES_extension_flag = = '1') { not used } for (i=0; i<N1; i++) { stuffing_byte 8 } for (i=0; i<N2; i++) { PES_packet_data_byte 8 } } }
4 The PTS field is included in a PES header only when the encapsulated SL packet header includes an OCR. Otherwise, the PTS field is not used.
12
The following rules are applied at the transmitting side in order to allow random accesses at the receiving side.
A PAT (Program Association Table) shall describe only one program, and its transmission period shall be no greater than 500 ms.
A PMT (Program Map Table) shall have the structure shown in Table 4.2-4 and adhere to the following rules.
• A group of descriptors with Restriction ‘A’ in the table shall include an IOD_descriptor.
• A group of descriptors with Restriction ‘B’ in the table shall include an SL_descriptor for an ES_ID.
• The transmission period of a PMT shall be no greater than 500 ms.
Table 4.2-4. Structure of a PMT
Syntax Number of Bits
Restrictions
TS_program_map_section() { table_id 8 section_syntax_indicator 1 '0' 1 reserved 2 section_length 12 program_number 16 reserved 2 version_number 5 current_next_indicator 1 section_number 8 last_section_number 8 reserved 3 PCR_PID 13 reserved 4 program_info_length 12 for (i=0; i<N; i++) { descriptor() A } for (i=0; i<N1; i++) { stream_type 8 ‘0x12’ or ‘0x13’ Reserved 3 elementary_PID 13 Reserved 4 ES_info_length 12 for (i=0; i<N2; i++) { descriptor() B } } CRC_32 32 }
The transmission period for scene description information and object description information shall be no greater than 500 ms.
The transmission period of a PCR within an ISO/IEC 13818-1 TS shall be no greater than 100 ms.
13
The transmission period of an OCR in the ISO/IEC 14496-1 SL layer shall be no greater than 700 ms.
The transmission period of a CTS in the ISO/IEC 14496-1 SL layer shall be no greater than 700 ms.
4.2.4 ISO/IEC 14496-1 SL packet specification
The following rules are applied to an SL packet header.
The ‘useAccessUnitStartFlag’ field has no restriction on its value.
The ‘useAccessUnitEndFlag’ field has no restriction on its value, but shall always be used with the ‘useAccessUnitStartFlag’ field.
The ‘useRandomAccessPointFlag’ field has its value restricted to ‘0’.5
The ‘hasRandomAccessUnitsOnlyFlag’ field has its value restricted to ‘0’.
The ‘usePaddingFlag’ field has its value restricted to ‘0’.6
The ‘useTimeStampsFlag’ field has its value restricted to ‘1’.
The ‘useIdleFlag’ field has its value restricted to ‘1’.
The ‘durationFlag’ field has no restriction on its value.
The ‘timeScale’ field shall always be used if the ‘durationFlag’ field has the value of ‘1’.
The ‘accessUnitDuration’ field shall always be used if the ‘durationFlag’ field has the value of ‘1’.
The ‘compositionUnitDuration’ field shall always be used if the ‘durationFlag’ field has the value of ‘1’.
The ‘timeStampResolution’ field shall be set to 90,000Hz.
The ‘OCRResolution’ field shall be set to 90,000Hz.
The ‘timeStampLength’ field shall be less than or equal to 33 bits.
The ‘OCRLength’ field shall be less than or equal to 33 bits.
The ‘AU_Length’ field has its value restricted to ‘0’.
The ‘instantBitrateLength’ field has no restriction on its value.7
The ‘degradationPriorityLength’ field has its value restricted to ‘0’.
The ‘AU_seqNumLength’ field has its value restricted to ‘0’.
The ‘packetSeqNumLength’ field has its value restricted to ‘0’.
5 Random access is supported through use of the ‘random_access_indicator’ field within the TS packet. 6 Padding is employed in PES packets. 7 This field shall be used if an OCR is encoded within an SL packet header since the‘instantBitrate’field shall also be encoded in the case.
14
The recovery and usage of timing information shall refer to the following:
2.11.3.3, 2.11.3.4 and 2.11.3.6 in ISO/IEC 13818-1:2000(E).
The OCR defined in ISO/IEC 14496-1 shall synchronize all the objects necessary for the description of a scene.
4.3 Composition of MPEG-4 Contents
Among several OD profiles defined in ISO/IEC 14496-1, tools defined in the “Core Profile” are used for the composition of the contents in the DMB video services. But the IPMP tool is not used.
The following are restrictions imposed on the MPEG-4 descriptors that are used for the composition of the contents in the DMB video services.
The following descriptors shall always be used.
Object Descriptor
Initial Object Descriptor
ES Descriptor
Decoder Config Descriptor
SL Config Descriptor
The following descriptors are not used.
IPI Descriptor Pointer
IPMP Descriptor Pointer
IPMP Descriptor
Object types that can be used to compose contents for video services are listed in Table 4.3-1
Table 4.3-1. Object types
ObjectTypeIndication Object Type 0x02 Systems ISO/IEC 14496-1 0x21 Visual ISO/IEC 14496-10 0x40 Audio ISO/IEC 14496-3 0x6C Visual ISO/IEC 10918-1 0xC0 – 0xFE user private
Stream types that can be used to compose contents for the DMB video services are listed in Table 4.3-2.
For the IOD/OD/BIFS in the case where only a combination of a single video object and a single audio object is broadcasted, please refer to Annex B of this document.
15
Table 4.3-2. Stream types
streamType value Stream Type 0x01 ObjectDescriptorStream 0x02 ClockReferenceStream 0x03 SceneDescriptionStream 0x04 VisualStream 0x05 AudioStream 0x20 - 0x3F user private
For the content access procedure within receiving terminals playing a video service, please refer to Annex C of this document. For the video services, more than one video object shall not be rendered in a scene. For the video services, more than one audio object shall not be rendered in a scene.
4.4 Audio Specification
4.4.1 Audio object specification
Audio object specification conforms to the standard relevant to the ER BSAC Audio Object Type with ObjectType ID 22 defined in ISO/IEC IS 14496-3.
Audio object bitstream has the following restrictions.
In AudioSpecificConfig(),
• epConfig: restricted to 0.
In GASpecificConfig()
• frameLengthFlag: restricted to 0.
• DependOnCoreCoder: restricted to 0.
In bsac_header(),
• sba_mode: restricted to 0so that the error resilience tool is not supported.
In general_header(),
• ltp_data_present: restricted to 0.
The restrictions in Table 4.4-1 shall be applied.
Table 4.4-1. Restrictions on audio objects
Item Value
Sampling rate 24,000Hz, 44,100Hz, 48,000Hz
Number of channels 1, 2
Number of objects 1
Maximum bitrate 128 kbps
16
4.5 Video Specification
4.5.1 Video object specification
Video objects are based on ITU-T Rec. H.264 | ISO/IEC 14496-10 standard. Video bitstreams shall comply with each of the items below.
Profile
• Video bitstreams shall comply with the “Baseline Profile” (ITU-T Rec. H.264 | ISO/IEC 14496-10 Annex A.2.1.)
• “Arbitrary slice order” shall not be allowed.
• In the syntax of “Picture Parameter Sets,” the “num_slice_groups_minus1” field has its value restricted to “0”.
• In the syntax of “Picture Parameter Sets,” the “redundant_pic_cnt_present_flag” field has its value restricted to “0”.
• In the syntax of “Sequence Parameter Sets,” the “pic_order_cnt_type” field has its value restricted to “2”.
• In the syntax of “Sequence Parameter Sets,” the “num_ref_frames”field has its value restricted to “3”.
Level
• Level 1,3 in Table A-1 of H.264/AVC Annex A shall be used with the following further restrictions.
• Resolutions supported : the formats listed in Table 4.5-1.
• Vertical MV component range (MaxVmvR) shall be [-64,+63.75].
• Maximum frame rate for each of the resolutions supported shall be 30fps.
• MaxDPB shall be 445.5kbytes at maximum.
Table 4.5-1. Resolutions supported
Format PicWidthInMbs FrameHeightInMbs PicSizeInMbs
QCIF 11 9 99
QVGA 20 15 300
WDF 24 14 336
CIF 22 18 396
17
4.5.2 Specification related to the transport of a video stream
To enable random access at the receiving side, IDR pictures shall be encoded within a video stream at least once every 2 seconds.
The “Parameter Set” shall be delivered through DecoderSpecificInfo or included in the video stream itself.
The specification related to the transport of a video stream after MPEG-4 SL packetization shall comply with clause 14 of ISO/IEC 14496-1:2001 Amendment 7
4.6 Auxiliary Data Specification (Optional)
4.6.1 Summary
This part of specification is selectively used only when auxiliary information is transported or interactive services are provided.
4.6.2 Scene description specification
Scene description specification complies with Core2D @Level 1 defined in ISO/IEC 14496-1.
4.6.3 Graphics data specification
Graphics data specification complies with Core2D@Level 1 defined in ISO/IEC 14496-1.
The character codes used for “Text” nodes are the basic characters used in the DMB. (Refer to Section 13 in Chapter 3 of TTAS.KO-07.0024.)
4.7 Outer Coding
The procedure of outer coding follows the specification defined in 4.3.2 of EN 300 744[1] and the procedure uses the shortened RS (204,188,t=8) encoder derived from RS(255,239,t=8).
The code and field generator polynomials of RS (255,239,t=8) are as follows:
Code generator polynomial: g(x) = (x+λ^0)(x+λ^1)(x+λ^2)…(x+λ^15), λ= 02(HEX)
Field generator polynomial: p(x) = x^8 + x^4 + x^3 + x^2 + 1
In order to obtain the shortened RS code, the first 51 input bytes for the RS(255,239,t=8) encoder are assumed to be zero and, after encoding, the 51 zero bytes that precede the valid 204-byte RS codeword at the output of the RS(255,239,t=8) encoder are discarded.
The 16-byte parity of the shortened RS code shall be located at the end of an MPEG-2 TS packet as shown in Figure 4.7-1.
Figure 4.7-1. Structure of an MPEG-2 TS packet encoded by RS(204,188,t=8)
Sync byte(1 byte)
MPEG-2 TS data(187 bytes)
Parity bytes(16 bytes)
204 bytes
18
4.8 Outer Interleaver
The procedure of outer interleaving follows the specification of convolutional byte-wise interleaving defined in 4.3.2 of EN 300 744[1].
The convolutional byte-wise interleaver shall be based on the Forney approach with the interleaving depth I=12 bytes as shown in Figure 4.8-1.
Figure 4.8-2 shows the data structure after applying the outer interleaving process to the RS-encoded TS packets.
17x11
17 x 2
17
0
10
8
9
11
0
10
8
9
11
17 x 3
17x11
17 x 2
17
0
1
2
3
11
0
1
2
3
11
17 x 3
Outer Interleaver Outer Deinterleaver
1 byteper
position
FIFO Shift Register
1 byteper
position
Figure 4.8-1. Conceptual diagram of the outer interleaver and deinterleaver
Sync byte(1 byte)
203 bytesSync byte(1 byte)
203 bytes. . . . . .Figure 4.8-2. Data structure after outer interleaving
19
Annex A (Informative) Transport rate available for a video service
1-A 2-A 3-A 4-A 1-A 2-A 3-A 4-A1/4 3/8 1/2 3/4 1/4 3/8 1/2 3/4
8 7.37 1 8 8 8 8 12 8 6 416 14.75 2 16 16 16 16 24 16 12 8: : : : : : : : : : :: : : : : : : : : : :
8n 8n*188/204 n 8n 8n 8n 8n 12n 8n 6n 4n: : : : : : : : : : :
576 530.82 72 576 : : : 864 : : :: : : : : : : : :
864 796.24 108 864 : : 864 : :: : : : : : :
1152 1061.65 144 1152 : 864 :: : : : :
1728 1592.47 216 1728 864
Note
1-B 2-B 3-B 4-B 1-B 2-B 3-B 4-B4/9 4/7 2/3 4/5 4/9 4/7 2/3 4/5
32 29.49 1 32 32 32 32 27 21 18 1564 58.98 2 64 64 64 64 54 42 36 30: : : : : : : : : : :: : : : : : : : : : :
32n 32n*188/204 n 32n 32n 32n 32n 27n 21n 18n 15n: : : : : : : : : : :
1024 943.69 32 1024 : : : 864 : : :: : : : : : : : :
1312 1209.10 41 1312 : : 861 : :: : : : : : :
1536 1415.53 48 1536 : 864 :: : : : :
1824 1680.94 57 1824 855
Note
Rate [kbps](RS-coded TS packet)
Type B
Available CUs for each protection code rate [CUs
Type A
Rate [kbps](RS-coded TS packet)
Rate [kbps](TS
packet)
Multiplier(n=integer)
Available rate for each protection code rate [kbps
Maximum rate for each protection code rate
Maximum rate for each protection code rate
Available CUs for each protection code rate [CUsAvailable rate for each protection code rate [kbpsMultiplier(n=integer)
Rate [kbps](TS
packet)
20
Annex B(Informative) An example of the IOD/OD/BIFS in the case where a combination of a single audio object and a single video
object is broadcasted
B.1 Summary
In Annex B, an example of minimum IOD/OD/BIFS is described in the case of a single audio object and a single video object within a broadcast stream.
Annex B describes the binary syntax and field values of IOD/OD/BIFS by using the example values of ES_ID, OD_ID, and URL as shown in the following Table B-1.
For bi-lingual services, another audio object (say, Audio object 2) is used.
Table B-1. Example values of ES_ID, OD_ID, and URL
ES_ID OD_ID URL
OD stream 1
BIFS stream 2 0 0
Audio object 101 10 10
Video object 201 20 20
B.2 IOD (binary syntax and field values)
# of Bits
Field Name Value
InitialObjectDescriptor
8 InitialObjectDescriptor tag 0x02
16 descriptor size ---
10 ObjectDescriptorID 0
1 URL_Flag 0
1 includeInlineProfilesFlag 0
4 Reserved 15
8 ODProfileLevelIndication 1 0x01
8 sceneProfileLevelIndication 0x0C
8 audioProfileLevelIndication 0x23
21
8 visualProfileLevelIndication
8 graphicsProfileLevelIndication 0x04
ES_Descriptor(OD)
8 ES_Descriptor tag 0x03
8 descriptor size ---
16 ES_ID 1
1 streamDependenceFlag 0
1 URL_Flag 0
1 OCRstreamFlag 0
5 streamPriority 0
DecoderConfigDescriptor(OD)
8 DecoderConfigDescriptor tag 0x04
8 descriptor size ---
8 objectTypeIndication 1
6 streamType 1
1 Upstream 0
1 Reserved 1
24 bufferSizeDB 250
32 maxBitrate 0
32 avgBitrate 0
SLConfigDescriptor(OD)
8 SLConfigDescriptor tag 0x06
8 descriptor size ---
8 Predefined 0
1 useAccessUnitStartFlag 1
1 useAccessUnitEndFlag 1
1 useRandomAccessPointFlag 0
1 hasRandomAccessUnitsOnlyFlag 0
22
1 usePaddingFlag 0
1 useTimeStampsFlag 1
1 useIdleFlag 1
1 durationFlag 0
32 timeStampResolution 90000
32 OCRResolution 90000
8 timeStampLength 33
8 OCRLength 33
8 AU_Length 0
8 instantBitrateLength ---
4 degradationPriorityLength 0
5 AU_seqNumLength 0
5 Packet_SeqNumLength 0
2 Reserved 3(0b11)
ES_Descriptor(BIFS)
8 ES_Descriptor tag 0x03
8 descriptor size ---
16 ES_ID 2
1 streamDependenceFlag 0
1 URL_Flag 0
1 OCRstreamFlag 0
5 streamPriority 0
DecoderConfigDescriptor(BIFS)
8 DecoderConfigDescriptor tag 0x04
8 descriptor size ---
8 objectTypeIndication 2
6 streamType 3
1 Upstream 0
23
1 Reserved 1
24 bufferSizeDB 22
32 maxBitrate 0
32 avgBitrate 0
SLConfigDescriptor(BIFS)
8 SLConfigDescriptor tag 0x06
8 descriptor size ---
8 Predefined 0
1 useAccessUnitStartFlag 1
1 useAccessUnitEndFlag 1
1 useRandomAccessPointFlag 0
1 hasRandomAccessUnitsOnlyFlag 0
1 usePaddingFlag 0
1 useTimeStampsFlag 1
1 useIdleFlag 1
1 durationFlag 0
32 timeStampResolution 90000
32 OCRResolution 90000
8 timeStampLength 33
8 OCRLength 33
8 AU_Length 0
8 instantBitrateLength ---
4 degradationPriorityLength 0
5 AU_seqNumLength 0
5 Packet_SeqNumLength 0
2 Reserved 3(0b11)
24
B.3 OD (binary syntax and values)
B.3.1 The case of a single audio object in a broadcast stream
# of Bits
Field Name Value
ObjectDescriptorUpdate
8 ObjectDescriptorUpdate tag 0x01
8 descriptor size ---
ObjectDescriptor(audio)
8 ObjectDescriptor tag 0x01
8 descriptor size ---
10 ObjectDescriptorID 10
1 URL_Flag 0
5 Reserved 31
ES_Descriptor(audio)
8 ES_Descriptor tag 0x03
8 descriptor size ---
16 ES_ID 101
1 streamDependenceFlag 0
1 URL_Flag 0
1 OCRstreamFlag 0
5 streamPriority 5
DecoderConfigDescriptor(audio)
8 DecoderConfigDescriptor tag 0x04
8 descriptor size ---
8 objectTypeIndication 0x40
6 streamType 5
1 Upstream 0
1 Reserved 1
24 bufferSizeDB ---
25
32 maxBitrate ---
32 avgBitrate ---
DecoderSpecificInfo(audio)
8 DecoderSpecificInfo tag 0x05
8 descriptor size ---
8* DecoderSpecificInfo data ---
SLConfigDescriptor(audio)
8 SLConfigDescriptor tag 0x06
8 descriptor size ---
8 Predefined 0
1 useAccessUnitStartFlag 1
1 useAccessUnitEndFlag 1
1 useRandomAccessPointFlag 0
1 hasRandomAccessUnitsOnlyFlag 0
1 usePaddingFlag 0
1 useTimeStampsFlag 1
1 useIdleFlag 1
1 durationFlag 0
32 timeStampResolution 90000
32 OCRResolution 90000
8 timeStampLength 33
8 OCRLength 33
8 AU_Length 0
8 instantBitrateLength ---
4 degradationPriorityLength 0
5 AU_seqNumLength 0
5 Packet_SeqNumLength 0
2 Reserved 3(0b11)
26
B.3.2 The case of a single audio object and a single video object in a broadcast stream
# of Bits
Field Name Value
ObjectDescriptorUpdate
8 ObjectDescriptorUpdate tag 0x01
8 descriptor size ---
ObjectDescriptor(video)
8 ObjectDescriptor tag 0x01
8 descriptor size ---
10 ObjectDescriptorID 20
1 URL_Flag 0
5 Reserved 31
ES_Descriptor(video)
8 ES_Descriptor tag 0x03
8 descriptor size ---
16 ES_ID 201
1 streamDependenceFlag 0
1 URL_Flag 0
1 OCRstreamFlag 1
5 streamPriority 4
16 OCR_ES_ID 101
DecoderConfigDescriptor(video)
8 DecoderConfigDescriptor tag 0x04
8 descriptor size ---
8 objectTypeIndication 0x21
6 streamType 4
1 upstream 0
1 Reserved 1
24 bufferSizeDB ---
27
32 maxBitrate ---
32 avgBitrate ---
DecoderSpecificInfo(video)
8 DecoderSpecificInfo tag 0x05
8 descriptor size ---
8* DecoderSpecificInfo data ---
SLConfigDescriptor(video)
8 SLConfigDescriptor tag 0x06
8 descriptor size ---
8 Predefined 0
1 useAccessUnitStartFlag 1
1 useAccessUnitEndFlag 1
1 useRandomAccessPointFlag 0
1 hasRandomAccessUnitsOnlyFlag 0
1 usePaddingFlag 0
1 useTimeStampsFlag 1
1 useIdleFlag 1
1 durationFlag 0
32 timeStampResolution 90000
32 OCRResolution 90000
8 timeStampLength 33
8 OCRLength 33
8 AU_Length 0
8 instantBitrateLength ---
4 degradationPriorityLength 0
5 AU_seqNumLength 0
5 Packet_SeqNumLength 0
2 Reserved 3(0b11)
28
ObjectDescriptor(audio)
8 ObjectDescriptor tag 0x01
8 descriptor size ---
10 ObjectDescriptorID 10
1 URL_Flag 0
5 Reserved 31
ES_Descriptor(audio)
8 ES_Descriptor tag 0x03
8 descriptor size ---
16 ES_ID 101
1 streamDependenceFlag 0
1 URL_Flag 0
1 OCRstreamFlag 0
5 streamPriority 5
DecoderConfigDescriptor(audio)
8 DecoderConfigDescriptor tag 0x04
8 descriptor size ---
8 objectTypeIndication 0x40
6 streamType 5
1 upstream 0
1 Reserved 1
24 bufferSizeDB ---
32 maxBitrate ---
32 avgBitrate ---
DecoderSpecificInfo(audio)
8 DecoderSpecificInfo tag 0x05
8 descriptor size ---
8* DecoderSpecificInfo data ---
29
SLConfigDescriptor(audio)
8 SLConfigDescriptor tag 0x06
8 descriptor size ---
8 Predefined 0
1 useAccessUnitStartFlag 1
1 useAccessUnitEndFlag 1
1 useRandomAccessPointFlag 0
1 hasRandomAccessUnitsOnlyFlag 0
1 usePaddingFlag 0
1 useTimeStampsFlag 1
1 useIdleFlag 1
1 durationFlag 0
32 timeStampResolution 90000
32 OCRResolution 90000
8 timeStampLength 33
8 OCRLength 33
8 AU_Length 0
8 instantBitrateLength ---
4 degradationPriorityLength 0
5 AU_seqNumLength 0
5 Packet_SeqNumLength 0
2 Reserved 3(0b11)
B.3.3 The case where multi-lingual audio is supported (audio 1/ audio 2/ video)
# of Bits
Field Name Value
ObjectDescriptorUpdate
8 ObjectDescriptorUpdate tag 0x01
8 descriptor size ---
30
ObjectDescriptor(video)
8 ObjectDescriptor tag 0x01
8 descriptor size ---
10 ObjectDescriptorID 20
1 URL_Flag 0
5 Reserved 31
ES_Descriptor(video)
8 ES_Descriptor tag 0x03
8 descriptor size ---
16 ES_ID 201
1 streamDependenceFlag 0
1 URL_Flag 0
1 OCRstreamFlag 1
5 streamPriority 4
16 OCR_ES_ID 101
DecoderConfigDescriptor(video)
8 DecoderConfigDescriptor tag 0x04
8 descriptor size ---
8 objectTypeIndication 0x21
6 streamType 4
1 Upstream 0
1 Reserved 1
24 bufferSizeDB ---
32 maxBitrate ---
32 avgBitrate ---
DecoderSpecificInfo(video)
8 DecoderSpecificInfo tag 0x05
8 descriptor size ---
31
8* DecoderSpecificInfo data ---
SLConfigDescriptor(video)
8 SLConfigDescriptor tag 0x06
8 descriptor size ---
8 Predefined 0
1 useAccessUnitStartFlag 1
1 useAccessUnitEndFlag 1
1 useRandomAccessPointFlag 0
1 hasRandomAccessUnitsOnlyFlag 0
1 usePaddingFlag 0
1 useTimeStampsFlag 1
1 useIdleFlag 1
1 durationFlag 0
32 timeStampResolution 90000
32 OCRResolution 90000
8 timeStampLength 33
8 OCRLength 33
8 AU_Length 0
8 instantBitrateLength ---
4 degradationPriorityLength 0
5 AU_seqNumLength 0
5 Packet_SeqNumLength 0
2 Reserved 3(0b11)
ObjectDescriptor(audio1)
8 ObjectDescriptor tag 0x01
8 descriptor size ---
10 ObjectDescriptorID 10
1 URL_Flag 0
32
5 Reserved 31
ES_Descriptor(audio1)
8 ES_Descriptor tag 0x03
8 descriptor size ---
16 ES_ID 101
1 streamDependenceFlag 0
1 URL_Flag 0
1 OCRstreamFlag 0
5 streamPriority 5
DecoderConfigDescriptor(audio1)
8 DecoderConfigDescriptor tag 0x04
8 descriptor size ---
8 objectTypeIndication 0x40
6 streamType 5
1 Upstream 0
1 Reserved 1
24 bufferSizeDB ---
32 maxBitrate ---
32 avgBitrate ---
DecoderSpecificInfo(audio1)
8 DecoderSpecificInfo tag 0x05
8 descriptor size ---
8* DecoderSpecificInfo data ---
SLConfigDescriptor(audio1)
8 SLConfigDescriptor tag 0x06
8 descriptor size ---
8 Predefined 0
1 useAccessUnitStartFlag 1
33
1 useAccessUnitEndFlag 1
1 useRandomAccessPointFlag 0
1 hasRandomAccessUnitsOnlyFlag 0
1 usePaddingFlag 0
1 useTimeStampsFlag 1
1 useIdleFlag 1
1 durationFlag 0
32 timeStampResolution 90000
32 OCRResolution 90000
8 timeStampLength 33
8 OCRLength 33
8 AU_Length 0
8 instantBitrateLength ---
4 degradationPriorityLength 0
5 AU_seqNumLength 0
5 Packet_SeqNumLength 0
2 Reserved 3(0b11)
ObjectDescriptor(audio2)
8 ObjectDescriptor tag 0x01
8 descriptor size ---
10 ObjectDescriptorID 12
1 URL_Flag 0
5 Reserved 31
ES_Descriptor(audio2)
8 ES_Descriptor tag 0x03
8 descriptor size ---
16 ES_ID 102
1 streamDependenceFlag 0
34
1 URL_Flag 0
1 OCRstreamFlag 0
5 streamPriority 5
DecoderConfigDescriptor(audio2)
8 DecoderConfigDescriptor tag 0x04
8 descriptor size ---
8 objectTypeIndication 0x40
6 streamType 5
1 Upstream 0
1 Reserved 1
24 bufferSizeDB ---
32 maxBitrate ---
32 avgBitrate ---
DecoderSpecificInfo(audio2)
8 DecoderSpecificInfo tag 0x05
8 descriptor size ---
8* DecoderSpecificInfo data ---
SLConfigDescriptor(audio2)
8 SLConfigDescriptor tag 0x06
8 descriptor size ---
8 Predefined 0
1 useAccessUnitStartFlag 1
1 useAccessUnitEndFlag 1
1 useRandomAccessPointFlag 0
1 hasRandomAccessUnitsOnlyFlag 0
1 usePaddingFlag 0
1 useTimeStampsFlag 1
1 useIdleFlag 1
35
1 durationFlag 0
32 timeStampResolution 90000
32 OCRResolution 90000
8 timeStampLength 33
8 OCRLength 33
8 AU_Length 0
8 instantBitrateLength ---
4 degradationPriorityLength 0
5 AU_seqNumLength 0
5 Packet_SeqNumLength 0
2 Reserved 3(0b11)
LanguageDescriptor(audio2)
8 LanguageDescriptor tag 0x47
8 descriptor size ---
24 languageCode ---
36
B.4 BIFS
B.4.1 The case of a single audio object within a broadcast stream
B.4.1.1 VRML syntax
OrderedGroup {
children [
Sound2D {source AudioSource {url 10}}
]
}
B.4.1.2 Coded data
C0 10 12 81 30 2A 05 7C
B.4.2 The case of a single audio object and a single video object within a broadcast stream
B.4.2.1 VRML syntax
OrderedGroup {
children [
Sound2D {source AudioSource {url 10}}
Shape {
geometry Bitmap {}
appearance Appearance {texture MovieTexture {url 20}}
}
]
}
B.4.2.2 Coded data
C0 10 12 81 30 2A 05 72 61 04 88 50 45 05 3F 00
37
Annex C (Informative) Content Access Procedure
The procedure in which contents are accessed is explained using the example shown in Figure C-1.
Figure C-1 MPEG-2 TS example that includes ISO/IEC 14496 contents
0 From an MPEG-2 TS, the PAT is obtained from the TS packets with PID 0x0000. Then a program number and the corresponding PMT PID are identified. In this case, there exists only one PMT in the PAT.
1 Search for the PMT in the TS using the PMT PID obtained above.
2 Within the PMT, find the IOD_descriptor that includes the IOD.
3 Within the IOD, find the ES_Descriptors related to the scene description and object description.
4 From the ES_Descriptor information found in 3, obtain the ES_IDs and then search for the elementary stream information corresponding to the ES_IDs through the descriptor loop in the PMT.
5 From the elementary stream information found in 4, obtain the PID and stream_type pairs corresponding to the ES_Ids, respectively, and then find packets corresponding to each of these in the transport stream.
MPEG-2 Transport Stream
TS Packet : PID = 0x0000
Program Association Section
... { ... program_number = 0x0001 program_map_PID = 0x0100 ...} CRC_32
TS Packet : PID = 0x0100
.. program_stream_info_length1st_descriptor_loop { IOD_descriptor{ }
} { stream_type = 0x13 elementary_PID =0x0111
2nd_descriptor_loop { SL_descriptor{ ES_ID =0x0011
} } stream_type = 0x13 elementary_PID =0x0112
2nd_descriptor_loop { SL_descriptor{ ES_ID =0x0012
} }
TS Program Map Section
stream_type = 0x12 elementary_PID = 0x0113
2nd_descriptor_loop { SL_descriptor{ ES_ID = 0x0013
} } stream_type = 0x12 elementary_PID = 0x0114
2nd_descriptor_loop { SL_descriptor{ ES_ID = 0x0014 } }
...
. . .
...
TS Packet : PID =0x0111
ISO_IEC_14496_Section
BIFS-Command Stream
... ES_Descriptor { ES_ID = 0x0011 streamType = “ SD stream ” specificInfo = “ BIFS-com ” } ES_Descriptor { ES_ID = 0x0012 streamType = “ OD stream ” } ...
Initial Object Descriptor
TS Packet : PID = 0x0112
ISO_IEC_14496_Section
OD Stream
ObjectDescriptor { ES_Descriptor { ES_ID = 0x0013 streamType = “ SD stream” specificInfo = “ BIFS-Anim” }
}ObjectDescriptor { ES_Descriptor { ES_ID = 0x0014 streamType = “ IPMP stream” }
}
Object Descriptor Stream
TS Packet : PID = 0x0113
BIFS-Anim Stream
PES Packet : stream_id = ‘ 1111 1010’
1
2
4
3
5
8
76
0 5
5
38
6,7 By using the ObjectDescriptorID contained in the scene description information, obtain the corresponding ObjectDescriptor contained in the object descriptor stream. By using the relationship between the ES_ID contained in the ObjectDescriptor and the PID that can be found in a way similar to 5, compose the scene.
8 Obtain the animation data using the scene description information.