1
www.tektronix.com ISO/IEC 13818-1 transport packet Syntax No. of bits transport_packet(){ sync_byte 8 transport_error_indicator 1 payload_unit_start_indicator 1 transport_priority 1 PID 13 transport_scrambling_control 2 adaptation_field_control 2 continuity_counter 4 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 } } } PROGRAM ASSOCIATION SECTION DIAGRAM 8 bits Table ID Section Syntax Indicator Transport Stream ID Current Next Indicator Last Section Number Section Length Version Number Section Number N Loop CRC 32 ‘0’ 1 bit 12 bits 16 bits 5 bits 8 bits 8 bits 32 bits 1 bit 1 bit 2 bits 2 bits Program Number 0 ... ... Program Map PID_i Program Number i Network PID 16 bits 13 bits 16 bits 13 bits 3 bits 3 bits TS PROGRAM MAP SECTION DIAGRAM 8 bits Table ID Section Syntax Indicator Current Next Indicator Last Section Number Section Length Program Number Version Number Section Number ‘0’ 1 bit 12 bits 16 bits 5 bits 8 bits 8 bits 4 bits 1 bit 1 bit 2 bits 2 bits Stream Type ES Info Length N Loop Descriptors Elementary PID 8 bits 13 bits 3 bits 4 bits 12 bits N Loop Descriptors 32 bits 12 bits CONDITIONAL ACCESS SECTION DIAGRAM 8 bits Table ID Section Syntax Indicator Current Next Indicator Last Section Number Section Length Version Number Section Number N Loop Descriptors CRC 32 ‘0’ 1 bit 12 bits 18 bits 5 bits 8 bits 8 bits 32 bits 1 bit 1 bit 2 bits PCR PID N Loop CRC_32 Program Info Length TRANSPORT STREAM SYNTAX DIAGRAM 8 bits Header Payload Payload Payload Transport Error Indicator Payload Unit Start Indicator Transport Scrambling Control Adaptation Field Control Transport Priority Sync Byte Adaptation Field 1 bit 1 bit 1 bit 188 bytes 13 bits 2 bits 4 bits 2 bits PID Transport Packet Stream Continuity Counter Adaptation Field Length Random Access Indicator Elementary Stream Priority Indicator Discontinuity Indicator Stuffing Bytes 8 bits 1 bit 1 bit 1 bit 5 bits 5 Flags Transport Private Data Length Transport Private Data Adaptation Field Extenstion Length 42 bits 42 bits 8 bits 8 bits 8 bits 3 bits 3 Flags PCR OPCR Optional Fields Splice Countdown 1 bit 15 bits 22 bits 2 bits 4 bits 33 bits DTS_next_au Itw_valid Flag Itw Offset Piecewise Rate Splice Type 13 bits 3 bits PRIVATE SECTION DIAGRAM Table Id Section Syntax Indicator Private Section Length Private Indicator 8 bits 1 bit 1 bit 12 bits 2 bits Section Number CRC 32 Table Id Extension Current Next Indicator Last Section Number N Private Data Version Number 16 bits 5 bits 1 bit 8 bits 8 bits 32 bits 2 bits N Private Data Bytes Allocation of table_id Values Value Description 0x00 0x01 0x02 0x03 0x04 to 0x3F 0x40 0x41 0x42 0x43 to 0x45 0x46 0x47 to 0x49 0x4A 0x4B to 0x4D 0x4E 0x4F 0x50 to 0x5F 0x60 to 0x6F 0x70 0x71 0x72 0x73 0x74 to 0x7D 0x7E 0x7F 0x80 to 0xFE 0xFF program_association_section conditional_access_section program_map_section transport_stream_description_section reserved network_information_section - actual_network network_information_section - other_network service_description_section - actual_transport_stream reserved for future use service_description_section - other_transport_stream reserved for future use bouquet_association_section reserved for future use event_information_section - actual_transport_stream, present/following event_information_section - other_transport_stream, present/following event_information_section - actual_transport_stream, schedule event_information_section - other_transport_stream, schedule time_date_section running_status_section stuffing_section time_offset_section reserved for future use discontinuity_information_section selection_information_section user defined reserved Abbreviations AC-3 Dolby AC-3 audio coding (ITU-R Recommendation BS1196 [19]) BAT Bouquet Association Table BCD Binary Coded Decimal bslbf bit string, left bit first CA Conditional Access CAT Conditional Access Table CLUT Color Look-Up Table CRC Cyclic Redundancy Check DAB Digital Audio Broadcasting DIT Discontinuity Information Table DVB Digital Video Broadcasting DVD Digital Versatile Disc EBU European Broadcasting Union EIT Event Information Table EMM Entitlement Management Message EPG Electronic ProgramGuide ETS European Telecommunication Standard FEC Forward Error Correction IEC International Electrotechnical Commission IRD Integrated Receiver Decoder ISO International Organization for Standardization LSB Least Significant Bit MJD Modified Julian Date MPEG Moving Pictures Expert Group NIT Network Information Table NVOD Near Video On Demand PAT Program Association Table PDC ProgramDelivery Control PID Packet IDentifier PMT Program Map Table PSI Program Specific Information PSTN Public Switched Telephone Network QAM Quadrature Amplitude Modulation QPSK Quaternary Phase Shift Keying rpchof remainder polynomial coefficients, highest order first RS Reed-Solomon RST Running Status Table SeF Scale Factor SDT Service Description Table SI Service Information SIT Selection Information Table SMI Storage Media Interoperability ST Stuffing Table TDT Time and Date Table TOT Time Offset Table TPS Transmission Parameter Signaling TS Transport Stream uimsbf unsigned integer most significant bit first UTC Universal Time, Co-ordinated VBI Vertical Blanking Interval VPS Video Program System WSS Wide Screen Signaling Stream Type Assignments Value Description 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F - 0x7F 0x80 - 0xFF ITU-T | ISO/IEC reserved ISO/IEC 11172-2 Video ITU-T Rec. H.262 | ISO/IEC 13818-2 Video or ISO/IEC 11172-2 constrained parameter video stream ISO/IEC 11172-3 Audio ISO/IEC 13818-3 Audio ITU-T Rec. H.222.0 | ISO/IEC 13818-1 private_sections ITU-T Rec. H.222.0 | ISO/IEC 13818-1 PES packets containing private data ISO/IEC 13522 MHEG Annex A - DSM CC ITU-T Rec. H.222.1 ISO/IEC 13818-6 type A ISO/IEC 13818-6 type B ISO/IEC 13818-6 type C ISO/IEC 13818-6 type D ISO/IEC 13818-1 auxiliary ITU-T Rec. H.222.0 | ISO/IEC 13818-1 reserved User private PID Allocation for DVB SI Table PID Value PAT CAT TSDT reserved NIT,ST SDT, BAT, ST EIT, ST RST, ST TDT, TOT, ST network synchronization reserved for future use inband signalling measurement DIT SIT 0x0000 0x0001 0x0002 0x0003 to 0x000F 0x0010 0x0011 0x0012 0x0013 0x0014 0x0015 0x0016 to 0x001B 0x001C 0x001D 0x001E 0x001F ETSI TR 101 290 -Table Timing Intervals Table Type PID Max/Min [1] ETSI TR 101 211, TSDT interval defined in section 4.1.9 [2] ETSI TR 101 211, Additional EIT Actual/Other Schedule intervals defined for: -DVB Satellite/Cable in section 4.4.1 -DVB Terrestrial in section 4.4.2 PAT TSDT NIT actual NIT other SDT actual SDT other BAT EIT actual present-following EIT other present-following TOT TDT PMT 0x00 500 ms 0x02 10000 ms [1] 0x10 10000 / 25 ms 0x10 10000 / 25 ms 0x11 2000 / 25 ms 0x11 10000 / 25 ms 0x11 10000 / 25 ms 0x12 2000 / 25 ms [2] 0x12 10000 / 25 ms [2] 0x14 30000 / 25 ms 0x14 30000 / 25 ms ALL 500 ms MPEG-2 Transport Stream ISO/IEC 13818-1 International Standard Service Information (SI) in DVB Systems ETSI EN 300 468 International Standard Header Header Optional Fields PES PACKET SYNTAX DIAGRAM 2 bits PES Scrambling Control Data Alignment Indicator PES Header Data Length Stuffing Bytes (0xFF) PES Priority Original or Copy Optional Fields 2 bits 1 bit 1 bit 1 bit 8 bits 8 bits m*8 bits 1 bit ‘10’ DSM Trick Mode PTS DTS ES Rate Additional Copy Info 33 bits 33 bits 42 bits 22 bits 8 bits 7 bits 16 bits ESCR PES Extension Copyright 7 Flags 24 bits 8 bits 16 bits PES Packet Data Bytes Stream Id Packet Start Code Prefix PES Packet Length Optional PES HEADER Previous PES CRC Optional Fields 5 Flags P-STD Buffer PES Private Data Packet Header Field PES Extension Field Length PES Extension Field Data 128 bits 8 bits 8 bits 16 bits 7 bits Program Packet Sequence Counter Selection Information Section (SI T) Syntax No. of bits selection_information_section ( ) { table_id 8 section_syntax_indicator 1 DVB_reserved_future_use 1 ISO_reserved 2 section_length 12 DVB_reserved_future_use 16 ISO_reserved 2 version_number 5 current_next_indicator 1 section_number 8 last_section_number 8 DVB_reserved_for_future_use 4 transmission_info_loop_length 12 for(i=0;i<N;i++) { descriptor() } for(i=0;i<N;i++) { service_id 16 DVB_reserved_future_use 1 running_status 3 service_loop_length 12 for(j=0;j<N;j++) { descriptor() } } CRC_32 32 } Discontinuity Information Section (DIT) Syntax No. of bits discontinuity_information_section ( ) { table_id 8 section_syntax_indicator 1 reserved_future_use 1 reserved 2 section_length 12 transition_flag 1 reserved_future_use 7 } Program association section (PAT) Syntax No. of bits program_association_section(){ table_id 8 section_syntax_indicator 1 ‘0’ 1 reserved 2 section_length 12 transport_stream_id 16 reserved 2 version_number 5 current_next_indicator 1 section_number 8 last_section_number 8 for (j=0;j<N;j++) { program_number 16 reserved 3 if(program_number==’0’) { network_PID 13 } else { program_map_PID 13 } } CRC_32 32 } Conditional access section (CAT) Syntax No. of bits CA_section( ) { table_id 8 section_syntax_indicator 1 ‘0’ 1 reserved 2 section_length 12 reserved 18 version_number 5 current_next_indicator 1 section_number 8 last_section number 8 for (i=0;i<N;i++) { descriptor( ) } CRC_32 32 } Transport Stream Description Section (TSDT) Syntax No. of bits TS_Description_section( ) { table_id 8 section_syntax_indicator 1 ‘0’ 1 reserved 2 section_length 12 reserved 18 version_number 5 current_next_indicator 1 section_number 8 last_section number 8 for (i=0;i<N;i++) { descriptor( ) } CRC_32 32 } Transport Stream program map section (PMT) Syntax No. of bits 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( ) } for (i=0;i<N1;i++) { stream_type 8 reserved 3 elementary_PID 13 reserved 4 ES_info_length 12 for (j=0;j<N2;j++) { descriptor( ) } } CRC_32 32 } Network Information section (NIT) Syntax No. of bits network_information_section(){ table_id 8 section_syntax_indicator 1 reserved_future_use 1 reserved 2 section_length 12 network_id 16 reserved 2 version_number 5 current_next_indicator 1 section_number 8 last_section number 8 reserved_future_use 4 network_descriptors_length 12 for(i=0;i<N;i++){ descriptor() } reserved_future_use 4 transport_stream_loop_length 12 for(i=0;i<N;i++){ transport_stream_id 16 original_network_id 16 reserved_future_use 4 transport_descriptors_length 12 for(j=0;j<N;j++){ descriptor() } } CRC_32 32 } Service description section (SDT) Syntax No. of bits service_description_section(){ table_id 8 section_syntax_indicator 1 reserved_future_use 1 reserved 2 section_length 12 transport_stream_id 16 reserved 2 version_number 5 current_next_indicator 1 section_number 8 last_section_number 8 original_network_id 16 reserved_future_use 8 for(i=0;i<N;i++){ service_id 16 reserved_future_use 6 EIT_schedule_flag 1 EIT_present_following_flag 1 running_status 3 free_CA_mode 1 descriptors_loop_length 12 for(j=0;j<N;j++){ descriptor() } } CRC_32 32 } Bouquet association section (BAT) Syntax No. of bits bouquet_association_section(){ table_id 8 section_syntax_indicator 1 reserved_future_use 1 reserved 2 section_length 12 bouquet_id 16 reserved 2 version_number 5 current_next_indicator 1 section_number 8 last_section number 8 reserved_future_use 4 bouquet_descriptors_length 12 for(i=0;i<N;i++){ descriptor() } reserved_future_use 4 transport_stream_loop_length 12 for(i=0;i<N;i++){ transport_stream_id 16 original_network_id 16 reserved_future_use 4 transport_descriptors_length 12 for(j=0;j<N;j++){ descriptor() } } CRC_32 32 } Event Information Section (EIT) Syntax No. of bits event_information_section(){ table_id 8 section_syntax_indicator 1 reserved_future_use 1 reserved 2 section_length 12 service_id 16 reserved 2 version_number 5 current_next_indicator 1 section_number 8 last_section_number 8 transport_stream_id 16 original_network_id 16 segment_last_section_number 8 last_table_id 8 for(i=0;i<N;i++){ event_id 16 start_time 40 duration 24 running_status 3 free_CA_mode 1 descriptors_loop_length 12 for(j=0;j<N;j++){ descriptor() } } CRC_32 32 } Running status section (RST) Syntax No. of bits running_status_section(){ table_id 8 section_syntax_indicator 1 reserved_future_use 1 reserved 2 section_length 12 for(i=0;i<N;i++){ transport_stream_id 16 original_network_id 16 service_id 16 event_id 16 reserved_future_use 5 running_status 3 } } Time offset section (TOT) Syntax No. of bits time_offset_section(){ table_id 8 section_syntax_indicator 1 reserved_future_use 1 reserved 2 section_length 12 UTC_time 40 reserved 4 descriptors_loop_length 12 for(i=0;i<N;i++){ descriptor() } CRC_32 32 } Stuffing section (ST) Syntax No. of bits stuffing_section(){ table_id 8 section_syntax_indicator 1 reserved_future_use 1 reserved 2 section_length 12 for(i=0;i<N;i++){ data_byte 8 } } Time and date section (TDT) Syntax No. of bits time_date_section(){ table_id 8 section_syntax_indicator 1 reserved_future_use 1 reserved 2 section_length 12 UTC_time 40 } PAT NIT NIT BAT SDT SDT EIT TDT RST TOT ST EIT EIT MPEG-2 DVB DVB Network Information Bouquet Association Service Description Event Information Running Status Time Offset Stuffing (Defined) PID = 0x0000 (Mandatory) PID = 0x0010 (Optional) PID=0x0010 PID=0x0001 PID = 0x0011 PID = 0x0012 PID = 0x0014 PID=0x0013 PID=0x0014 PID=0x0010 to 0x0014 PID = 0x0012 PID = 0x0012 PID = 0x0011 PID = 0x0011 Actual transport stream Other transport stream Actual transport stream Time & Date Other transport stream Actual transport stream present/following Actual transport stream schedule Other transport stream present/following schedule PID = 0x10 to 0x1FFE PID=0x0002 CAT PMT TSDT Private Section Syntax No. of bits private_section() { table_id 8 section_syntax_indicator 1 private_indicator 1 reserved 2 private_section_length 12 if(section_syntax_indicator== ‘0’) { for(i=0; i<N; i++) { private_data_byte 8 } } else { table_id_extension 16 reserved 2 version_number 5 current_next_indicator 1 section_number 8 last_section_number 8 for(i=0;i<private_section_length-9;i++) { private_data_byte 8 } CRC_32 32 } } Photo courtesy of NASA/JPL/Caltech

MPEG-2 Transport Stream Service Information (SI) in DVB Systems · 2019. 7. 9. · Info Length N Loop Descriptors Elementary PID 8 bits 13 bits 3 bits 4 bits 12 bits N Loop Descriptors

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MPEG-2 Transport Stream Service Information (SI) in DVB Systems · 2019. 7. 9. · Info Length N Loop Descriptors Elementary PID 8 bits 13 bits 3 bits 4 bits 12 bits N Loop Descriptors

www.tektronix.com

ISO/IEC 13818-1 transport packetSyntax No. of bits

t ranspor t_packet ( ) {sync_byte 8transpor t_error_ ind ica tor 1pay load_uni t_star t_ ind ica tor 1t ranspor t_pr ior i ty 1PID 13transpor t_scrambl ing_contro l 2adapta t ion_f ie ld_contro l 2cont inu i ty_counter 4i f (adapta t ion_f ie ld_cont ro l==’10’ | | adapta t ion_f ie ld_cont ro l==’11’ ) {

adapta t ion_f ie ld ( )}i f (adapta t ion_f ie ld_cont ro l==’01’ | | adapta t ion_f ie ld_cont ro l==’11’ ) {

fo r ( i=0; i<N; i++) {data_byte 8

}}

}

PROGRAM ASSOCIATION SECTION DIAGRAM8 bits

Table IDSectionSyntax

Indicator

TransportStream

ID

CurrentNext

Indicator

LastSectionNumber

SectionLength

VersionNumber

SectionNumber

NLoop

CRC32

‘0’

1 bit 12 bits 16 bits 5 bits 8 bits 8 bits32bits1 bit

1 bit

2 bits

2 bits

ProgramNumber

0

. . . . . .Program

MapPID_i

ProgramNumber

i

NetworkPID

16 bits 13 bits 16 bits 13 bits3

bits3

bits

TS PROGRAM MAP SECTION DIAGRAM8 bits

Table IDSectionSyntax

Indicator

CurrentNext

Indicator

LastSectionNumber

SectionLength

ProgramNumber

VersionNumber

SectionNumber

‘0’

1 bit 12 bits 16 bits 5 bits 8 bits 8 bits4

bits1 bit1

bit2

bits2

bits

StreamType

ESInfo

Length

NLoop

Descriptors

ElementaryPID

8 bits 13 bits3

bits4

bits 12 bits

NLoop

Descriptors

32 bits12 bits

CONDITIONAL ACCESS SECTION DIAGRAM8 bits

Table IDSectionSyntax

Indicator

CurrentNext

Indicator

LastSectionNumber

SectionLength

VersionNumber

SectionNumber

NLoop

Descriptors

CRC32

‘0’

1 bit 12 bits 18 bits 5 bits 8 bits 8 bits32bits1 bit

1 bit

2 bits

PCRPID

NLoop CRC_32

ProgramInfo

Length

TRANSPORT STREAM SYNTAX DIAGRAM

8 bits

Header Payload Payload Payload

TransportError

Indicator

PayloadUnit StartIndicator

TransportScrambling

Control

AdaptationField

Control

TransportPriority

SyncByte

AdaptationField

1 bit 1 bit 1 bit

188 bytes

13 bits 2 bits 4 bits2 bits

PID

TransportPacketStream

ContinuityCounter

AdaptationField

Length

RandomAccess

Indicator

ElementaryStream Priority

Indicator

DiscontinuityIndicator

StuffingBytes

8 bits 1 bit 1 bit 1 bit 5 bits

5 Flags

TransportPrivate Data

Length

TransportPrivateData

AdaptationField Extenstion

Length

42 bits 42 bits 8 bits 8 bits 8 bits 3 bits

3 FlagsPCR OPCR OptionalFields

SpliceCountdown

1 bit 15 bits 22 bits2 bits 4 bits 33 bits

DTS_next_auItw_valid

FlagItw

OffsetPiecewise

RateSpliceType

13 bits3

bits

PRIVATE SECTION DIAGRAM

TableId

SectionSyntax

Indicator

PrivateSectionLength

PrivateIndicator

8 bits 1 bit 1 bit 12 bits2

bits

SectionNumber

CRC32

TableId

Extension

CurrentNext

Indicator

LastSectionNumber

NPrivateData

VersionNumber

16 bits 5 bits 1 bit 8 bits 8 bits 32 bits2

bits

N Private Data Bytes

Allocation of table_id Values

Value Description

0x000x010x020x03

0x04 to 0x3F0x400x410x42

0x43 to 0x450x46

0x47 to 0x490x4A

0x4B to 0x4D0x4E0x4F

0x50 to 0x5F0x60 to 0x6F

0x700x710x720x73

0x74 to 0x7D0x7E0x7F

0x80 to 0xFE0xFF

program_association_sectionconditional_access_sectionprogram_map_sectiontransport_stream_description_sectionreservednetwork_information_section - actual_networknetwork_information_section - other_networkservice_description_section - actual_transport_streamreserved for future useservice_description_section - other_transport_streamreserved for future usebouquet_association_sectionreserved for future useevent_information_section - actual_transport_stream, present/followingevent_information_section - other_transport_stream, present/followingevent_information_section - actual_transport_stream, scheduleevent_information_section - other_transport_stream, scheduletime_date_sectionrunning_status_sectionstuffing_sectiontime_offset_sectionreserved for future usediscontinuity_information_sectionselection_information_sectionuser definedreserved

Abbreviations

AC-3 Dolby AC-3 audio coding (ITU-R Recommendation BS1196 [19])

BAT Bouquet Association TableBCD Binary Coded Decimalbslbf bit string, left bit firstCA Conditional AccessCAT Conditional Access TableCLUT Color Look-Up TableCRC Cyclic Redundancy CheckDAB Digital Audio BroadcastingDIT Discontinuity Information TableDVB Digital Video BroadcastingDVD Digital Versatile DiscEBU European Broadcasting UnionEIT Event Information TableEMM Entitlement Management MessageEPG Electronic ProgramGuideETS European Telecommunication StandardFEC Forward Error CorrectionIEC International Electrotechnical CommissionIRD Integrated Receiver DecoderISO International Organization for StandardizationLSB Least Significant BitMJD Modified Julian DateMPEG Moving Pictures Expert GroupNIT Network Information TableNVOD Near Video On DemandPAT Program Association TablePDC ProgramDelivery ControlPID Packet IDentifierPMT Program Map TablePSI Program Specific InformationPSTN Public Switched Telephone NetworkQAM Quadrature Amplitude ModulationQPSK Quaternary Phase Shift Keyingrpchof remainder polynomial coefficients, highest order firstRS Reed-SolomonRST Running Status TableSeF Scale FactorSDT Service Description TableSI Service InformationSIT Selection Information TableSMI Storage Media InteroperabilityST Stuffing TableTDT Time and Date TableTOT Time Offset TableTPS Transmission Parameter SignalingTS Transport Streamuimsbf unsigned integer most significant bit firstUTC Universal Time, Co-ordinatedVBI Vertical Blanking IntervalVPS Video Program SystemWSS Wide Screen Signaling

Stream Type AssignmentsValue Description

0x000x010x02

0x030x040x050x06

0x070x080x090x0A0x0B0x0C0x0D0x0E

0x0F - 0x7F0x80 - 0xFF

ITU-T | ISO/IEC reservedISO/IEC 11172-2 VideoITU-T Rec. H.262 | ISO/IEC 13818-2 Video or ISO/IEC11172-2 constrained parameter video streamISO/IEC 11172-3 AudioISO/IEC 13818-3 AudioITU-T Rec. H.222.0 | ISO/IEC 13818-1 private_sectionsITU-T Rec. H.222.0 | ISO/IEC 13818-1 PES packetscontaining private dataISO/IEC 13522 MHEGAnnex A - DSM CCITU-T Rec. H.222.1ISO/IEC 13818-6 type AISO/IEC 13818-6 type BISO/IEC 13818-6 type CISO/IEC 13818-6 type DISO/IEC 13818-1 auxiliaryITU-T Rec. H.222.0 | ISO/IEC 13818-1 reservedUser private

PID Allocation for DVB SITable PID Value

PATCATTSDTreservedNIT,STSDT, BAT, STEIT, STRST, STTDT, TOT, STnetwork synchronizationreserved for future useinband signallingmeasurementDITSIT

0x00000x00010x00020x0003 to 0x000F0x00100x00110x00120x00130x00140x00150x0016 to 0x001B0x001C0x001D0x001E0x001F

ETSI TR 101 290 -Table Timing IntervalsTable Type PID Max/Min

[1] ETSI TR 101 211, TSDT interval defined in section 4.1.9[2] ETSI TR 101 211, Additional EIT Actual/Other Schedule intervalsdefined for:-DVB Satellite/Cable in section 4.4.1-DVB Terrestrial in section 4.4.2

PATTSDTNIT actualNIT otherSDT actualSDT otherBATEIT actual present-followingEIT other present-followingTOTTDTPMT

0x 00 500 ms0x 02 10000 ms [1]0x10 10000 / 25 ms0x10 10000 / 25 ms0x11 2000 / 25 ms0x11 10000 / 25 ms0x11 10000 / 25 ms0x12 2000 / 25 ms [2]0x12 10000 / 25 ms [2]0x14 30000 / 25 ms0x14 30000 / 25 msALL 500 ms

MPEG-2 Transport StreamISO/IEC 13818-1 International Standard

Service Information (SI) in DVB SystemsETSI EN 300 468 International Standard

HeaderHeader

OptionalFields

PES PACKET SYNTAX DIAGRAM

2 bits

PESScrambling

Control

DataAlignmentIndicator

PESHeader

Data Length

StuffingBytes(0xFF)

PESPriority

Originalor Copy

OptionalFields

2 bits 1 bit 1 bit 1 bit 8 bits 8 bits m*8 bits1 bit

‘10’

DSMTrickMode

PTSDTS

ESRate

AdditionalCopy Info

33 bits33 bits 42 bits 22 bits 8 bits 7 bits 16 bits

ESCR

ESCR

PESExtension

Copyright 7 Flags

24 bits 8 bits 16 bits

PES Packet Data BytesStream

Id

PacketStart Code

Prefix

PESPacketLength

OptionalPES

HEADER

PreviousPESCRC

OptionalFields5 Flags

P-STDBuffer

PESPrivateData

PacketHeaderField

PESExtension

Field Length

PESExtensionField Data

128 bits 8 bits 8 bits 16 bits 7 bits

Program PacketSequence Counter

Selection Information Section (SIT)Syntax No. of bits

selection_information_section ( ) {table_id 8section_syntax_indicator 1DVB_reserved_future_use 1ISO_reserved 2section_length 12DVB_reserved_future_use 16ISO_reserved 2version_number 5current_next_indicator 1section_number 8last_section_number 8DVB_reserved_for_future_use 4transmission_info_loop_length 12for(i=0;i<N;i++) {

descriptor ( )}for(i=0;i<N;i++) {

service_id 16DVB_reserved_future_use 1running_status 3service_loop_length 12for(j=0;j<N;j++) {

descriptor ( )}

}CRC_32 32

}

Discontinuity Information Section(DIT)

Syntax No. of bits

discontinuity_information_section ( ) {table_id 8section_syntax_indicator 1reserved_future_use 1reserved 2section_length 12transition_flag 1reserved_future_use 7

}

Program association section (PAT)Syntax No. of bits

program_association_section( ) {table_id 8section_syntax_indicator 1‘0’ 1reserved 2section_length 12transport_stream_id 16reserved 2version_number 5current_next_indicator 1section_number 8last_section_number 8fo r ( j=0; j< N; j++) {

program_number 16reserved 3if (program_number==’0’ ) {

network_PID 13}else {

program_map_PID 13}

}CRC_32 32

}

Conditional access section (CAT)Syntax No. of bits

CA_section( ) {table_id 8section_syntax_indicator 1‘0’ 1reserved 2section_length 12reserved 18version_number 5current_next_indicator 1section_number 8last_section number 8for (i=0;i<N;i++) {

descriptor( )}CRC_32 32

}

Transport Stream Description Section(TSDT)

Syntax No. of bits

TS_Description_section( ) {table_id 8section_syntax_indicator 1‘0’ 1reserved 2section_length 12reserved 18version_number 5current_next_indicator 1section_number 8last_section number 8for (i=0;i<N;i++) {

descriptor( )}CRC_32 32

}

Transport Stream program map section (PMT)

Syntax No. of bits

TS_program_map_section( ) {table_id 8section_syntax_indicator 1‘0’ 1reserved 2section_length 12program_number 16reserved 2version_number 5current_next_indicator 1section_number 8last_section number 8reserved 3PCR_PID 13reserved 4program_info_length 12for (i=0;i<N;i++) {

descriptor( )}for (i=0;i<N1;i++) {

stream_type 8reserved 3elementary_PID 13reserved 4ES_info_length 12for (j=0;j<N2;j++) {

descriptor( )}

}CRC_32 32

}

Network Information section (NIT)Syntax No. of bits

network_information_section( ) {table_id 8section_syntax_indicator 1reserved_future_use 1reserved 2section_length 12network_id 16reserved 2version_number 5current_next_indicator 1section_number 8last_section number 8reserved_future_use 4network_descriptors_length 12for(i=0;i<N;i++){

descriptor( )}reserved_future_use 4transport_stream_loop_length 12for(i=0;i<N;i++){

transport_stream_id 16original_network_id 16reserved_future_use 4transport_descriptors_length 12for(j=0;j<N;j++){

descriptor()}

}CRC_32 32

}

Service description section (SDT)Syntax No. of bits

service_description_section( ){table_id 8section_syntax_indicator 1reserved_future_use 1reserved 2section_length 12transport_stream_id 16reserved 2version_number 5current_next_indicator 1section_number 8last_section_number 8original_network_id 16reserved_future_use 8 for(i=0;i<N;i++) {

service_id 16reserved_future_use 6EIT_schedule_flag 1EIT_present_following_flag 1running_status 3free_CA_mode 1descriptors_loop_length 12for(j=0;j<N;j++){

descriptor( )}

}CRC_32 32

}

Bouquet association section (BAT)Syntax No. of bits

bouquet_association_section(){table_id 8section_syntax_indicator 1reserved_future_use 1reserved 2section_length 12bouquet_id 16reserved 2version_number 5current_next_indicator 1section_number 8last_section number 8reserved_future_use 4bouquet_descriptors_length 12 for(i=0;i<N;i++){

descriptor( )}reserved_future_use 4transport_stream_loop_length 12for(i=0;i<N;i++){

transport_stream_id 16original_network_id 16reserved_future_use 4transport_descriptors_length 12for(j=0;j<N;j++) {

descriptor ( )}

}CRC_32 32

}

Event Information Section (EIT)Syntax No. of bits

event_information_section( ) {table_id 8section_syntax_indicator 1reserved_future_use 1reserved 2section_length 12service_id 16reserved 2version_number 5current_next_indicator 1section_number 8last_section_number 8transport_stream_id 16original_network_id 16segment_last_section_number 8last_table_id 8 for(i=0;i<N;i++) {

event_id 16start_time 40duration 24running_status 3free_CA_mode 1descriptors_loop_length 12for (j=0;j<N;j++) {

descriptor ( )}

}CRC_32 32

}

Running status section (RST)Syntax No. of bits

running_status_section ( ) {table_id 8section_syntax_indicator 1reserved_future_use 1reserved 2section_length 12for(i=0;i<N;i++){

transport_stream_id 16original_network_id 16service_id 16event_id 16reserved_future_use 5running_status 3

}}

Time offset section (TOT)Syntax No. of bits

time_offset_section ( ) {table_id 8section_syntax_indicator 1reserved_future_use 1reserved 2section_length 12UTC_time 40reserved 4descriptors_loop_length 12for(i=0;i<N;i++){

descriptor ( )}CRC_32 32

}

Stuffing section (ST)Syntax No. of bits

stuffing_section ( ) {table_id 8section_syntax_indicator 1reserved_future_use 1reserved 2section_length 12for(i=0;i<N;i++){

data_byte 8}

}

Time and date section (TDT)Syntax No. of bits

time_date_section ( ){table_id 8section_syntax_indicator 1reserved_future_use 1reserved 2section_length 12UTC_time 40

}

PAT NIT NIT

BAT

SDTSDT

EIT

TDT

RST

TOT

ST

EIT EIT

MPEG-2 DVB DVB

NetworkInformation

BouquetAssociation

ServiceDescription

EventInformation

RunningStatus

TimeOffset

Stuffing

(Defined)PID=0x0000

(Mandatory)PID=0x0010

(Optional)PID=0x0010

PID=0x0001

PID=0x0011

PID=0x0012

PID=0x0014

PID=0x0013

PID=0x0014

PID=0x0010 to 0x0014

PID=0x0012 PID=0x0012

PID=0x0011

PID=0x0011

Actual transportstream

Other transportstream

Actual transportstream

Time & Date

Other transportstream

Actual transportstream

present/following

Actual transportstreamschedule

Other transportstream

present/following

schedule

PID=0x10 to 0x1FFE

PID=0x0002

CAT

PMT

TSDT

Private SectionSyntax No. of bits

private_section ( ) {table_id 8section_syntax_indicator 1private_indicator 1reserved 2private_section_length 12if(section_syntax_indicator== ‘0’) {

for(i=0; i<N; i++) {private_data_byte 8

}}else {

table_id_extension 16reserved 2version_number 5current_next_indicator 1section_number 8last_section_number 8for(i=0;i<private_section_length-9;i++) {

private_data_byte 8

}CRC_32 32

}}

Photo courtesy of NASA/JPL/Caltech