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 Abbreviations ATSC Advanced Television Systems Committee BMP Basic Multilingual Plane bslbf bit serial, left bit first CAT Conditional Access Table CRC Cyclic Redundancy Check CVCT Cable Virtual Channel Table DTV Digital Television EIT Event Information Table EPG Electronic Program Guide EMM Entitlement Management Message ETM Extended Text Message ETT Extended Text Table GPS Global Positioning System MGT Master Guide Table MPAA Motion Picture Association of America MPEG Moving Picture Experts Group NIT Network Information Table NVOD Near Video On Demand OOB Out of Band PAT Program Association Table PCR Program Clock Reference PES Packetized Elementary Stream PID Packet Identifier PMT Program Map Table PSIP Program and System Information Protocol PTC Physical Transmission Channel SCTE Society of Cable Telecommunications Engineers SI System Information SMPTE310M Synchronous Serial Interface for MPEG-2 transport streams at 19.392658 and 38.785317 Mbps STD System Target Decoder STT System Time Table rpchof remainder polynomial coefficients, highest order first RRT Rating Region Table TS Transport Stream TSDT Transport Stream Description Table TVCT Terrestrial Virtual Channel Table unicode Unicode™ UTC Coordinated Universal Time uimsbf unsigned integer, most significant bit first VCT Virtual Channel Table. Used in reference to either TVCT or CVCT MPEG-2 Transport Stream ISO/IEC 13818-1 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 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 } PAT PID=0x0000 PID=0x0001 PID=0x10 to 0x1FFE PID=0x0002 PID=0x0010 CAT PMT NIT (Optional) 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 } } Rating Region Table (RRT) Syntax Bits Format rating_region_table_section(){ table_id 8 0xCA section_syntax_indicator 1 ‘1’ private_indicator 1 ‘1’ reserved 2 ‘11’ section_length 12 uimsbf table_id_extension{ reserved 8 0xFF rating_region 8 uimsbf } reserved 2 ‘11’ version_number 5 uimsbf current_next_indicator 1 ‘1’ section_number 8 uimsbf last_section_number 8 uimsbf protocol_version 8 uimsbf rating_region_name_length 8 uimsbf rating_region_name_text() var dimensions_defined 8 uimsbf for(i=0;i<dimesions_defined;i++){ dimesion_name_length 8 uimsbf dimension_name_text() var reserved 3 ‘111’ graduated_scale 1 bslbf values_defined 4 uimsbf for (j=0;j<values_defined;j++){ abbrev_rating_value_length 8 uimsbf abbrev_rating_value_text() var rating_value_length 8 uimsbf rating_value_text() var } } reserved 6 ‘111111’ descriptors_length 10 uimsbf for (i=0;i<N;i++){ descriptor() } CRC_32 32 rpchof } DCC Selection Code Table (DCCSCT) Syntax Bits Format dcc_selection_code_table_section(){ table_id 8 0xD4 section_syntax_indicator 1 ‘1’ private_indicator 1 ‘1’ reserved 2 ‘11’ section_length 12 uimsbf table_id_extension 16 uimsbf reserved 2 ‘11’ version_number 5 uimsbf current_next_indicator 1 ‘1’ section_number 8 0x00 last_section_number 8 0x00 protocol_version 8 uimsbf selection_categories_defined 8 uimsbf for(i=0;i<selection_categories_defined;i++){ selection_category_code 8 uimsbf selection_category_name_length 8 uimsbf selection_category_name_text() var reserved 6 ‘111111’ descriptors_length 10 uimsbf for (j=0;j<N;j++){ descriptors() } } reserved 6 ‘111111’ additional_descriptors_length 10 uimsbf for (i=0;i<N;i++){ additional_descriptors() } CRC_32 32 rpchof Stream Type Assignments Value Description 0x00 0x01 - 0x7F 0x80 0x81 0x82 - 0x84 0x85 0x86 - 0xBF 0xC0 - 0xFF ITU-T | ISO/IEC reserved As specified in Table 2.29 ( Stream type assignments ) of ISO/IEC 13818-1 [Used in other systems] ATSC A/53 audio [Used in other systems] UPID (ATSC A/57 Program/Episode/Version Identification ) Reserved User Private Master Guide Table (MGT) Syntax Bits Format master_guide_table_section(){ table_id 8 0xC7 section_syntax_indicator 1 ‘1’ private_indicator 1 ‘1’ reserved 2 ‘11’ section_length 12 uimsbf table_id_extension 16 0x0000 reserved 2 ‘11’ version_number 5 uimsbf current_next_indicator 1 ‘1’ section_number 8 0x00 last_section_number 8 0x00 protocol_version 8 uimsbf tables_defined 16 uimsbf for(i=0;i<tables_defined;i++){ table_type 16 uimsbf reserved 3 ‘111’ table_type_PID 13 uimsbf reserved 3 ‘111’ table_type_version_number 5 uimsbf number_bytes 32 uimsbf reserved 4 ‘1111’ table_type_descriptors_length 12 uimsbf for (k=0;k<N;k++){ descriptor( ) } } reserved 4 ‘1111’ descriptors_length 12 uimsbf for (l=0;l<N;l++) { descriptor( ) } CRC_32 32 rpchof } MGT PID-V PID-Y PID-X ETT-V text messages for VCT ETT-0 text messages for EIT-0 ETT-1 text messages for EIT-1 PID-Z Extended Text Tables (ETT’s) Defined to Carry Text Messages for Describing Virtual Channels and Events ETT-2 text messages for EIT-2 Extended Text Table (ETT) Syntax Bits Format extended_text_table_section() { table_id 8 0xCC section_syntax_indicator 1 ‘1’ private_indicator 1 ‘1’ reserved 2 ‘11’ section_length 12 uimsbf table_id_extension 16 0x0000 reserved 2 ‘11’ version_number 5 uimsbf current_next_indicator 1 ‘1’ section_number 8 0x00 last_section_number 8 0x00 protocol_version 8 uimsbf ETM_id 32 uimsbf extended_text_message() var CRC_32 32 rpchof } System Time Table (STT) Syntax Bits Format system_time_table_section(){ table_id 8 0xCD section_syntax_indicator 1 ‘1’ private_indicator 1 ‘1’ reserved 2 ‘11’ section_length 12 uimsbf table_id_extension 16 0x0000 reserved 2 ‘11’ version_number 5 ‘00000’ current_next_indicator 1 ‘1’ section_number 8 0x00 last_section_number 8 0x00 protocol_version 8 uimsbf system_time 32 uimsbf GPS_UTC_offset 8 uimsbf daylight_savings 16 uimsbf for(l=0;l<N;l++){ descriptor( ) } CRC_32 32 rpchof } Advanced Television Systems Committee (ATSC) Program and System Information Protocol (PSIP) for Terrestrial Broadcast and Cable (Doc. A/65B and A/69) ISO/IEC 13818-2 Video Levels and Profiles MGT DCCSCT DCCT RRT STT VCT base_PID PID-N EIT-3 for channel x source_id for channel y source_id EIT-2 EIT-1 EIT-0 PID-M PID-L PID-K source_id source_id source_id source_id source_id source_id source_id source_id MPEG-2 (Defined) Directed Channel Change Table (DCCT) Syntax Bits Format directed_channel_change_table_section(){ table_id 8 0xD3 section_syntax_indicator 1 ‘1’ private_indicator 1 ‘1’ reserved 2 ‘11’ section_length 12 uimsbf table_id_extension 16 0x0000 reserved 2 ‘11’ version_number 5 uimsbf current_next_indicator 1 ‘1’ section_number 8 0x00 last_section_number 8 0x00 protocol_version 8 uimsbf dcc_vc_count 8 uimsbf for(i=0;i<dcc_vc_count;i++){ reserved 4 ‘1111’ dcc_from_major_channel_number 10 uimsbf dcc_from_minor_channel_number 10 uimsbf reserved 4 ‘1111’ dcc_to_major_channel_number 10 uimsbf dcc_to_minor_channel_number 10 uimsbf dcc_start_time 32 uimsbf dcc_end_time 32 uimsbf dcc_selection_count 8 uimsbf for (j=0;j<dcc_selection_count;j++){ dcc_selection_type 8 uimsbf dcc_selection_id 64 uimsbf reserved 6 ‘111111’ dcc_descriptors_length 10 uimsbf for (k=0;k<N;k++){ descriptor() } } reserved 6 ‘111111’ descriptors_length 10 uimsbf for (j=0;j<N;j++){ descriptor() } } reserved 6 ‘111111’ additional_descriptors_length 10 uimsbf for(i=0;i<N;i++){ additional_descriptor() Event Information Table (EIT) Syntax Bits Format event_information_table_section(){ table_id 8 0xCB section_syntax_indicator 1 ‘1’ private_indicator 1 ‘1’ reserved 2 ‘11’ section_length 12 uims- bf source_id 16 uims- bf zero 2 ‘00’ version_number 5 uims- bf current_next_indicator 1 ‘1’ section_number 8 uims- bf last_section_number 8 uims- bf protocol_version 8 uims- bf num_events_in_section 8 uims- bf for(j=0;j<num_events_in_section;j++){ reserved 2 ‘11’ event_id 14 uims- bf start_time 32 uims- bf reserved 2 ‘11’ ETM_location 2 uims- bf PAT 0x0 100 ms CAT 0x1 100 ms TSDT 0x2 100 ms MGT 0x1FFB 150 ms TVCT 0x1FFB 400 ms CVCT 0x1FFB 400 ms STT 0x1FFB 1000 ms RRT 0x1FFB 60000 ms PMT ALL 400 ms EIT ALL 500 ms PID Max Interval Table Type Table Timing Intervals Terrestrial Virtual Channel Table (TVCT) Syntax Bits Format terrestrial_virtual_channel_table_section(){ table_id 8 0xC8 section_syntax_indicator 1 ‘1’ private_indicator 1 ‘1’ reserved 2 ‘11’ section_length 12 uimsbf transport_stream_id 16 uimsbf reserved 2 ‘11’ version_number 5 uimsbf current_next_indicator 1 bslbf section_number 8 uimsbf last_section_number 8 uimsbf protocol_version 8 uimsbf num_channels_in_section 8 uimsbf for(i=0;i<num_channels_in_section;i++){ short_name 7*16 Unicode™ BMP reserved 4 ‘1111’ major_channel_number 10 uimsbf minor_channel_number 10 uimsbf modulation_mode 8 uimsbf carrier_frequency 32 uimsbf channel_TSID 16 uimsbf program_number 16 uimsbf ETM_location 2 uimsbf access_controlled 1 bslbf hidden 1 bslbf reserved 2 ‘11’ hide_guide 1 bslbf reserved 3 ‘111’ service_type 6 uimsbf source_id 16 uimsbf reserved 6 ‘111111’ descriptors_length 10 uimsbf for (i=0;i<N;i++){ descriptor() } } reserved 6 ‘111111’ additional_descriptors_length 10 uimsbf for (j=0;j<N;j++){ additional_descriptor() } CRC_32 32 rpchof } Cable Virtual Channel Table (CVCT) Syntax Bits Format cable_virtual_channel_table_section(){ table_id 8 0xC9 section_syntax_indicator 1 ‘1’ private_indicator 1 ‘1’ reserved 2 ‘11’ section_length 12 uimsbf transport_stream_id 16 uimsbf reserved 2 ‘11’ version_number 5 uimsbf current_next_indicator 1 bslbf section_number 8 uimsbf last_section_number 8 uimsbf protocol_version 8 uimsbf num_channels_in_section 8 uimsbf for(i=0;i<num_channels_in_section;i++){ short_name 7*16 Unicode™ BMP reserved 4 ‘1111’ major_channel_number 10 uimsbf minor_channel_number 10 uimsbf modulation_mode 8 uimsbf carrier_frequency 32 uimsbf channel_TSID 16 uimsbf program_number 16 uimsbf ETM_location 2 uimsbf access_controlled 1 bslbf hidden 1 bslbf path_select 1 bslbf out_of_band 1 bslbf hide_guide 1 bslbf reserved 3 ‘111’ service_type 6 uimsbf source_id 16 uimsbf reserved 6 ‘111111’ descriptors_length 10 uimsbf for (i=0;i<N;i++){ descriptor() } } reserved 6 ‘111111’ additional_descriptors_length 10 uimsbf for (j=0;j<N;j++){ additional_descriptor() } CRC_32 32 rpchof ATSC Table Hierarchy for the Program and System Information Protocol (PSIP) Table ID Ranges and Values 0x00 0x01 0x02 0x03 - 0x3F 0x40 - 0xBF 0 1 per PAT I SO/IEC 13818-1 Sections: PROGRAM ASSOCIATION TABLE (PAT) CONDITIONAL ACCESS TABLE (CAT) TS PROGRAM MAP TABLE (PMT) [ISO Reserved] User Private Sections: [User Private] 0xC0 - 0xC6 Other Documents: [ATSC coordinated values which are defined in other standards] 0xC7 0xC8 0xC9 0xCA 0xCB 0xCC 0xCD 0xCE - 0xD2 0xD3 0xD4 0xD5-0xDF 0xE0 - 0xE5 0xE6 - 0xFE 0x1FFB 0x1FFB 0x1FFB 0x1FFB per MGT per MGT 0x1FFB 0x1FFB 0x1FFB PSIP Tables: MASTER GUIDE TABLE (MGT) TERRESTRIAL VIRTUAL CHANNEL TABLE (TVCT) CABLE VIRTUAL TABLE CHANNEL (CVCT) RATING REGION TABLE (RRT) EVENT INFORMATION TABLE (EIT) EXTENDED TEXT TABLE (ETT) SYSTEM TIME TABLE (STT) [ATSC coordinated values which are defined in other standards] DIRECTED CHANNEL CHANGE TABLE (DCCT) DIRECTED CHANNEL CHANGE SELECTION CODE TABLE (DCCSCT) [ATSC coordinated values which are defined in other standards] [Used in other systems] [Reserved for future ATSC use] Table ID Value (hex) Tables PID Tables defined in this PSIP Standard, and any created as user extensions to it are considered “private” with respect to ISO/IEC 13818-1. Table types 0x40 through 0xBF are user defined (outside the scope of this PSIP Standard).

MPEG-2 Transport Stream Advanced Television Systems · PDF filepayload_unit_start_indicator 1 transport_priority 1 PID 13 transport_scrambling_control 2 adaptation_field_control 2

  • Upload
    dangtu

  • View
    219

  • Download
    2

Embed Size (px)

Citation preview

Page 1: MPEG-2 Transport Stream Advanced Television Systems · PDF filepayload_unit_start_indicator 1 transport_priority 1 PID 13 transport_scrambling_control 2 adaptation_field_control 2

www.tektronix.com

ISO/IEC 13818-1 TRANSPORT PACKET

Syntax No. of bitst 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_contro l==’10’ | | adapta t ion_f ie ld_contro l==’11’ ) {

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

for ( i=0; i<N; i++) {da ta_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

1bit

2bits

2bits

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

1bit

2bits

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

Abbreviations

ATSC Advanced Television Systems CommitteeBMP Basic Multilingual Planebslbf bit serial, left bit firstCAT Conditional Access TableCRC Cyclic Redundancy CheckCVCT Cable Virtual Channel TableDTV Digital TelevisionEIT Event Information TableEPG Electronic Program GuideEMM Entitlement Management MessageETM Extended Text MessageETT Extended Text TableGPS Global Positioning SystemMGT Master Guide TableMPAA Motion Picture Association of AmericaMPEG Moving Picture Experts GroupNIT Network Information TableNVOD Near Video On DemandOOB Out of BandPAT Program Association TablePCR Program Clock ReferencePES Packetized Elementary StreamPID Packet IdentifierPMT Program Map TablePSIP Program and System Information ProtocolPTC Physical Transmission ChannelSCTE Society of Cable Telecommunications EngineersSI System InformationSMPTE310M Synchronous Serial Interface for MPEG-2 transport

streams at 19.392658 and 38.785317 MbpsSTD System Target DecoderSTT System Time Tablerpchof remainder polynomial coefficients, highest order firstRRT Rating Region TableTS Transport StreamTSDT Transport Stream Description TableTVCT Terrestrial Virtual Channel Tableunicode Unicode™UTC Coordinated Universal Timeuimsbf unsigned integer, most significant bit firstVCT Virtual Channel Table. Used in reference

to either TVCT or CVCT

MPEG-2 Transport StreamISO/IEC 13818-1 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 PESExtension

Copyright 7 Flags

24 bits 8 bits 16 bits

PES Packet Data BytesStream

Id

PacketStart Code

Prefix

PESPacketLength

OptionalPES

HEADER

PreviousPESCRC

OptionalFields 5 Flags

P-STDBuffer

PESPrivateData

PacketHeaderField

PESExtension

Field Length

PESExtensionField Data

128 bits 8 bits 8 bits 16 bits 7 bits

Program PacketSequence Counter

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 8for ( 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

}

PAT

PID=0x0000

PID=0x0001

PID=0x10 to 0x1FFE

PID=0x0002

PID=0x0010

CAT

PMT

NIT(Optional)

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

}}

Rating Region Table (RRT)Syntax Bits Format

rating_region_table_section( ) {table_id 8 0xCAsection_syntax_indicator 1 ‘1’private_indicator 1 ‘1’reserved 2 ‘11’section_length 12 uimsbftable_id_extension {

reserved 8 0xFFrating_region 8 uimsbf

}reserved 2 ‘11’version_number 5 uimsbfcurrent_next_indicator 1 ‘1’section_number 8 uimsbflast_section_number 8 uimsbfprotocol_version 8 uimsbfrating_region_name_length 8 uimsbfrating_region_name_text ( ) vardimensions_defined 8 uimsbffor(i=0;i<dimesions_defined;i++) {

dimesion_name_length 8 uimsbfdimension_name_text ( ) varreserved 3 ‘111’graduated_scale 1 bslbfvalues_defined 4 uimsbffor (j=0;j<values_defined;j++) {

abbrev_rating_value_length 8 uimsbfabbrev_rating_value_text ( ) varrating_value_length 8 uimsbfrating_value_text ( ) var

}}reserved 6

‘111111’descriptors_length 10 uimsbffor (i=0;i<N;i++) {

descriptor ( )}CRC_32 32 rpchof

}

DCC Selection Code Table (DCCSCT)Syntax Bits Format

dcc_selection_code_table_section( ) {table_id 8 0xD4section_syntax_indicator 1 ‘1’private_indicator 1 ‘1’reserved 2 ‘11’section_length 12 uimsbftable_id_extension 16 uimsbfreserved 2 ‘11’version_number 5 uimsbfcurrent_next_indicator 1 ‘1’section_number 8 0x00last_section_number 8 0x00protocol_version 8 uimsbfselection_categories_defined 8 uimsbffor(i=0;i<selection_categories_defined;i++) {

selection_category_code 8 uimsbfselection_category_name_length 8 uimsbfselection_category_name_text ( ) varreserved 6

‘111111’descriptors_length 10 uimsbffor (j=0;j<N;j++) {

descriptor s ( )}

}reserved 6

‘111111’additional_descriptors_length 10 uimsbffor (i=0;i<N;i++) {

additional_descriptor s( )}CRC_32 32 rpchof

Stream Type Assignments

Value Description

0x000x01 - 0x7F

0x800x81

0x82 - 0x840x85

0x86 - 0xBF0xC0 - 0xFF

ITU-T | ISO/IEC reservedAs specified in Table 2.29 (Stream type assignments)of ISO/IEC 13818-1[Used in other systems]ATSC A/53 audio[Used in other systems]UPID (ATSC A/57 Program/Episode/Version Identification)ReservedUser Private

Master Guide Table (MGT)Syntax Bits Format

master_guide_table_section( ) {table_id 8 0xC7section_syntax_indicator 1 ‘1’private_indicator 1 ‘1’reserved 2 ‘11’section_length 12 uimsbftable_id_extension 16

0x0000reserved 2 ‘11’version_number 5 uimsbfcurrent_next_indicator 1 ‘1’section_number 8 0x00last_section_number 8 0x00protocol_version 8 uimsbftables_defined 16 uimsbffor(i=0;i<tables_defined;i++) {

table_type 16 uimsbfreserved 3 ‘111’table_type_PID 13 uimsbfreserved 3 ‘111’table_type_version_number 5 uimsbfnumber_bytes 32 uimsbfreserved 4 ‘1111’table_type_descriptors_length 12 uimsbffor (k=0;k<N;k++) {

descriptor ( )}

}reserved 4 ‘1111’descriptors_length 12 uimsbffor (l=0;l<N;l++) {

descriptor ( )}CRC_32 32 rpchof

}

MGT

PID-V

PID-YPID-X

ETT-Vtext messages

for VCT

ETT-0text messages

for EIT-0

ETT-1text messages

for EIT-1

PID-Z

Extended Text Tables (ETT’s) Defined toCarry Text Messages for Describing Virtual

Channels and Events

ETT-2text messages

for EIT-2

Extended Text Table (ETT)Syntax Bits Format

extended_text_table_section( ) {table_id 8 0xCCsection_syntax_indicator 1 ‘1’private_indicator 1 ‘1’reserved 2 ‘11’section_length 12 uimsbftable_id_extension 16 0x0000reserved 2 ‘11’version_number 5 uimsbfcurrent_next_indicator 1 ‘1’section_number 8 0x00last_section_number 8 0x00protocol_version 8 uimsbfETM_id 32 uimsbfextended_text_message ( ) varCRC_32 32 rpchof

}

System Time Table (STT)Syntax Bits Format

system_time_table_section( ) {table_id 8 0xCDsection_syntax_indicator 1 ‘1’private_indicator 1 ‘1’reserved 2 ‘11’section_length 12 uimsbftable_id_extension 16 0x0000reserved 2 ‘11’version_number 5 ‘00000’current_next_indicator 1 ‘1’section_number 8 0x00last_section_number 8 0x00protocol_version 8 uimsbfsystem_time 32 uimsbfGPS_UTC_offset 8 uimsbfdaylight_savings 16 uimsbffor(l=0;l<N;l++) {

descriptor ( )}CRC_32 32 rpchof

}

Advanced Television Systems Committee (ATSC)Program and System Information Protocol (PSIP) for Terrestrial Broadcast and Cable (Doc. A/65B and A/69)

ISO/IEC 13818-2 Video Levels and Profiles

MGT

DCCSCT

DCCT

RRTSTT

VCT

base_PID

PID-N

EIT-3for channel x

source_id

for channel ysource_id

EIT-2 EIT-1 EIT-0

PID-M PID-L PID-K

source_id

source_id

source_id

source_id

source_id

source_id

source_id

source_id

MPEG-2(Defined)

Directed Channel Change Table (DCCT)Syntax Bits Format

directed_channel_change_table_section( ) {table_id 8 0xD3section_syntax_indicator 1 ‘1’private_indicator 1 ‘1’reserved 2 ‘11’section_length 12 uimsbftable_id_extension 16 0x0000reserved 2 ‘11’version_number 5 uimsbfcurrent_next_indicator 1 ‘1’section_number 8 0x00last_section_number 8 0x00protocol_version 8 uimsbfdcc_vc_count 8 uimsbffor(i=0;i<dcc_vc_count;i++) {

reserved 4 ‘1111’dcc_from_major_channel_number 10 uimsbfdcc_from_minor_channel_number 10 uimsbfreserved 4 ‘1111’dcc_to_major_channel_number 10 uimsbfdcc_to_minor_channel_number 10 uimsbfdcc_start_time 32 uimsbfdcc_end_time 32 uimsbfdcc_selection_count 8 uimsbffor (j=0;j<dcc_selection_count;j++) {

dcc_selection_type 8 uimsbfdcc_selection_id 64 uimsbfreserved 6

‘111111’dcc_descriptors_length 10 uimsbffor (k=0;k<N;k++) {

descriptor ( )}

}reserved 6

‘111111’descriptors_length 10 uimsbffor (j=0;j<N;j++) {

descriptor ( )}

}reserved 6

‘111111’additional_descriptors_length 10 uimsbffor(i=0;i<N;i++) {

additional_descriptor ( )

Event Information Table (EIT)Syntax Bits

Format

event_information_table_section( ) {table_id 8 0xCBsection_syntax_indicator 1 ‘1’private_indicator 1 ‘1’reserved 2 ‘11’section_length 12 uims-

bfsource_id 16 uims-

bfzero 2 ‘00’version_number 5 uims-

bfcurrent_next_indicator 1 ‘1’section_number 8 uims-

bflast_section_number 8 uims-

bfprotocol_version 8 uims-

bfnum_events_in_section 8 uims-

bffor(j=0;j<num_events_in_section;j++) {

reserved 2 ‘11’event_id 14 uims-

bfstart_time 32 uims-

bfreserved 2 ‘11’ETM_location 2 uims-

bf

PAT 0x 0 100 msCAT 0x 1 100 msTSDT 0x2 100 msMGT 0x1FFB 150 msTVCT 0x1FFB 400 msCVCT 0x1FFB 400 msSTT 0x1FFB 1000 msRRT 0x1FFB 60000 msPMT ALL 400 msEIT ALL 500 ms

PID MaxInterval

TableType

Table Timing Intervals

Terrestrial Virtual Channel Table (TVCT)Syntax Bits Format

terrestrial_virtual_channel_table_section( ) {table_id 8 0xC8section_syntax_indicator 1 ‘1’private_indicator 1 ‘1’reserved 2 ‘11’section_length 12 uimsbftransport_stream_id 16 uimsbfreserved 2 ‘11’version_number 5 uimsbfcurrent_next_indicator 1 bslbfsection_number 8 uimsbflast_section_number 8 uimsbfprotocol_version 8 uimsbfnum_channels_in_section 8 uimsbffor(i=0;i<num_channels_in_section;i++) {

short_name 7*16 Unicode™BMP

reserved 4 ‘1111’major_channel_number 10 uimsbfminor_channel_number 10 uimsbfmodulation_mode 8 uimsbfcarrier_frequency 32 uimsbfchannel_TSID 16 uimsbfprogram_number 16 uimsbfETM_location 2 uimsbfaccess_controlled 1 bslbfhidden 1 bslbfreserved 2 ‘11’hide_guide 1 bslbfreserved 3 ‘111’service_type 6 uimsbfsource_id 16 uimsbfreserved 6 ‘111111’descriptors_length 10 uimsbffor (i=0;i<N;i++) {

descriptor ( )}

}reserved 6 ‘111111’additional_descriptors_length 10 uimsbffor (j=0;j<N;j++) {

additional_descriptor ( )}CRC_32 32 rpchof

}

Cable Virtual Channel Table (CVCT)Syntax Bits Format

cable_virtual_channel_table_section( ) {table_id 8 0xC9section_syntax_indicator 1 ‘1’private_indicator 1 ‘1’reserved 2 ‘11’section_length 12 uimsbftransport_stream_id 16 uimsbfreserved 2 ‘11’version_number 5 uimsbfcurrent_next_indicator 1 bslbfsection_number 8 uimsbflast_section_number 8 uimsbfprotocol_version 8 uimsbfnum_channels_in_section 8 uimsbffor(i=0;i<num_channels_in_section;i++) {

short_name 7*16 Unicode™BMP

reserved 4 ‘1111’major_channel_number 10 uimsbfminor_channel_number 10 uimsbfmodulation_mode 8 uimsbfcarrier_frequency 32 uimsbfchannel_TSID 16 uimsbfprogram_number 16 uimsbfETM_location 2 uimsbfaccess_controlled 1 bslbfhidden 1 bslbfpath_select 1 bslbfout_of_band 1 bslbfhide_guide 1 bslbfreserved 3 ‘111’service_type 6 uimsbfsource_id 16 uimsbfreserved 6 ‘111111’descriptors_length 10 uimsbffor (i=0;i<N;i++) {

descriptor ( )}

}reserved 6 ‘111111’additional_descriptors_length 10 uimsbffor (j=0;j<N;j++) {

additional_descriptor ( )}CRC_32 32 rpchof

ATSCTable Hierarchy for the Program and System Information Protocol

( PSIP)

Table ID Ranges and Values

0x000x010x02

0x03 - 0x3F

0x40 - 0xBF

01

per PAT

ISO/IEC 13818-1 Sections:PROGRAM ASSOCIATION TABLE (PAT)CONDITIONAL ACCESS TABLE (CAT)TS PROGRAM MAP TABLE (PMT)

[ ISO Reserved]

User Private Sections:[ User Private]

0xC0 - 0xC6Other Documents:[ ATSC coordinated values which are defined in otherstandards]

0xC70xC80xC90xCA0xCB0xCC0xCD

0xCE - 0xD2

0xD30xD4

0xD5-0xDF

0xE0 - 0xE50xE6 - 0xFE

0x1FFB0x1FFB0x1FFB0x1FFBper MGTper MGT0x1FFB

0x1FFB0x1FFB

PSIP Tables:MASTER GUIDE TABLE (MGT)TERRESTRIAL VIRTUAL CHANNEL TABLE (TVCT)CABLE VIRTUAL TABLE CHANNEL (CVCT)RATING REGION TABLE (RRT)EVENT INFORMATION TABLE (EIT)EXTENDED TEXT TABLE (ETT)SYSTEM TIME TABLE (STT)

[ATSC coordinated values which are defined in otherstandards]

DIRECTED CHANNEL CHANGE TABLE (DCCT)DIRECTED CHANNEL CHANGE SELECTION CODE TABLE (DCCSCT)

[ATSC coordinated values which are defined in otherstandards][Used in other systems][Reserved for future ATSC use]

Table ID Value (hex) Tables PID

Tables defined in this PSIP Standard, and any created as user extensions to it are considered “private” with respect to ISO/IEC 13818-1. Table types 0x40 through 0xBF are user defined

(outside the scope of this PSIP Standard).