This file is raw output from pdftotext and may not be ideal for distribution. If you are a maintainer for Hackipedia, please sit down when you have time and clean this text version up. Source PDF: /mnt/main/jmc-storage/docs/ATSC/A-65 Program and System Information Protocol for Terrestrial Broadcast and Cable (Revision C) w amend 1 (2006).pdf Like all conversions the text below should be fully readable as UTF-8 unicode text. --------------------------------------------------------------- A/65C 2 January 2006 Amendment No. 1 dated 9 May 2006 ATSC Standard: Program and System Information Protocol for Terrestrial Broadcast and Cable (Revision C) With Amendment No. 1 Advanced Television Systems Committee 1750 K Street, N.W. Suite 1200 Washington, D.C. 20006 http://www.atsc.org ATSC A/65C Program and System Information Protocol 2 January 2006 The Advanced Television Systems Committee, Inc., is an international, non-profit organization developing voluntary standards for digital television. The ATSC member organizations represent the broadcast, broadcast equipment, motion picture, consumer electronics, computer, cable, satellite, and semiconductor industries. Specifically, ATSC is working to coordinate television standards among different communications media focusing on digital television, interactive systems, and broadband multimedia communications. ATSC is also developing digital television implementation strategies and presenting educational seminars on the ATSC standards. ATSC was formed in 1982 by the member organizations of the Joint Committee on InterSociety Coordination (JCIC): the Electronic Industries Association (EIA), the Institute of Electrical and Electronic Engineers (IEEE), the National Association of Broadcasters (NAB), the National Cable Television Association (NCTA), and the Society of Motion Picture and Television Engineers (SMPTE). Currently, there are approximately 140 members representing the broadcast, broadcast equipment, motion picture, consumer electronics, computer, cable, satellite, and semiconductor industries. ATSC Digital TV Standards include digital high definition television (HDTV), standard definition television (SDTV), data broadcasting, multichannel surround-sound audio, and satellite direct-to-home broadcasting. Editor’s Note, 18 October 2006: This edition corrects previously undetected document formatting error in Annex F, Figure F2 that had been present since the A/65A (with Amendment No. 1) release. In the third to last line of the Figure, the Huffman code corresponding to the letter sequence “ex” had been shown as ‘0001001’ due to unintended truncation of the figure. The correct Huffman code is now correctly shown as ‘00010011’ for that combination. 1 ATSC A/65C Program and System Information Protocol 2 January 2006 Table of Contents 1. SCOPE .....................................................................................................................................................9 1.1 Application 9 1.1.1 Terrestrial Broadcast 9 1.1.2 Cable 10 1.2 Organization 10 2. REFERENCES .......................................................................................................................................11 2.1 Normative References 11 2.2 Informative References 12 3. DEFINITIONS .........................................................................................................................................12 3.1 Compliance Notation 12 3.2 Acronyms and Abbreviations 12 3.3 Definition of Terms 14 3.4 Section and Data Structure Syntax Notation 15 4. DATA STRUCTURE ...............................................................................................................................15 4.1 Table Format 15 4.2 Extensibility 18 4.3 User Private Ranges 18 4.4 Reserved Fields 19 5. TABLE HIERARCHY AND STRUCTURE REQUIREMENTS ................................................................19 5.1 Requirements for Terrestrial Broadcast 22 5.2 Requirements for Cable 22 6. SPECIFICATIONS..................................................................................................................................22 6.1 System Time Table (STT) 22 6.2 Master Guide Table (MGT) 24 6.2.1 Descriptors in the MGT Outer Loop 28 6.2.2 Descriptors in the MGT Inner Loop 28 6.2.3 Descriptor Precedence 28 6.3 Virtual Channel Table (VCT) 28 6.3.1 Terrestrial Virtual Channel Table 29 6.3.2 Cable Virtual Channel Table 35 6.4 Rating Region Table (RRT) 38 6.5 Event Information Table (EIT) 41 6.6 Extended Text Table (ETT) 45 6.7 Directed Channel Change Table (DCCT) 47 6.7.1 Temporary Retune DCC 50 2 ATSC A/65C Program and System Information Protocol 2 January 2006 6.7.2 Channel Redirect DCC 50 6.7.3 Viewer-Direct-Select Persistence 65 6.8 DCC Selection Code Table (DCCSCT) 66 6.9 Core Descriptors 69 6.9.1 AC-3 Audio Descriptor 71 6.9.2 Caption Service Descriptor 71 6.9.3 Content Advisory Descriptor 72 6.9.4 Extended Channel Name Descriptor 74 6.9.5 Service Location Descriptor 74 6.9.6 Time-Shifted Service Descriptor 76 6.9.7 Component Name Descriptor 77 6.9.8 Stuffing Descriptor 78 6.9.9 Descriptors for Inactive Channels 78 6.9.10 DCC Departing Request Descriptor 78 6.9.11 DCC Arriving Request Descriptor 79 6.9.12 Redistribution Control (RC) Descriptor 80 6.9.13 Genre Descriptor 81 6.10 Multiple String Structure 82 7. PSIP STD MODEL..................................................................................................................................86 7.1 Buffer Model for Terrestrial Broadcast 86 7.2 Buffer Model for Cable 86 7.3 Buffer Model Considerations to Support DCC for Terrestrial Broadcast 86 ANNEX A: DAYLIGHT SAVINGS TIME CONTROL (NORMATIVE) ...........................................87 ANNEX B: ADDITIONAL CONSTRAINTS ON VIRTUAL CHANNEL TABLE FOR THE U.S. (NORMATIVE) ...................................................................................................................................89 1. ASSIGNMENT OF MAJOR CHANNEL NUMBER VALUES FOR TERRESTRIAL BROADCAST IN THE U.S..................................................................................................................................................89 2. REQUIREMENT TO TRANSMIT ANALOG TRANSMISSION SIGNAL ID ............................................90 ANNEX C: STANDARD HUFFMAN TABLES FOR TEXT COMPRESSION (NORMATIVE) ......91 1. SCOPE ...................................................................................................................................................91 2. CHARACTER SET DEFINITION ............................................................................................................91 2.1 First Order Escape 91 2.2 Decode Table Data Structures 92 2.2.1 Tree Root Byte Offsets 92 2.2.2 Order-1 Decode Trees 92 3 ATSC A/65C Program and System Information Protocol 2 January 2006 3. STANDARD COMPRESSION TYPE 1 ENCODE/DECODE TABLES ...................................................94 4. STANDARD COMPRESSION TYPE 2 HUFFMAN ENCODE/DECODE TABLES ..............................102 ANNEX D: AN OVERVIEW OF PSIP FOR TERRESTRIAL BROADCAST WITH APPLICATION EXAMPLES (INFORMATIVE) ..............................................................................................................110 1. INTRODUCTION ..................................................................................................................................110 2. OVERVIEW...........................................................................................................................................110 3. ELEMENTS OF PSIP ...........................................................................................................................110 4. APPLICATION EXAMPLE ...................................................................................................................114 4.1 The Master Guide Table (MGT) 115 4.2 The Virtual Channel Table (VCT) 116 4.3 The Event Information Tables (EITs) 119 4.4 The Rating Region Table (RRT) 120 5. PACKETIZATION AND TRANSPORT .................................................................................................121 6. TUNING OPERATIONS AND TABLE ACCESS ..................................................................................122 7. GPS TIME.............................................................................................................................................124 8. NVOD EXAMPLES...............................................................................................................................125 9. INTERPRETATION OF MGT TABLE VERSION NUMBERS...............................................................127 10. USE OF ANALOG TRANSMISSION SIGNAL ID.................................................................................129 11. USE OF COMPONENT NAME DESCRIPTOR ....................................................................................129 ANNEX E: TYPICAL SIZE OF PSIP TABLES (INFORMATIVE)...............................................130 1. OVERVIEW...........................................................................................................................................130 2. SYSTEM TIME TABLE (STT)...............................................................................................................130 3. MASTER GUIDE TABLE (MGT) ..........................................................................................................130 4. TERRESTRIAL VIRTUAL CHANNEL TABLE (TVCT) ........................................................................130 5. RATING REGION TABLE (RRT) .........................................................................................................131 6. EVENT INFORMATION TABLE (EIT)..................................................................................................131 7. EXTENDED TEXT TABLE (ETT) .........................................................................................................132 8. DIRECTED CHANNEL CHANGE TABLE (DCCT) ..............................................................................132 9. DIRECTED CHANNEL CHANGE SELECTION CODE TABLE (DCCSCT).........................................133 10. AN EXAMPLE FOR TERRESTRIAL BROADCAST ............................................................................133 4 ATSC A/65C Program and System Information Protocol 2 January 2006 ANNEX F: OVERVIEW OF HUFFMAN-BASED TEXT COMPRESSION (INFORMATIVE)......135 1. INTRODUCTION ..................................................................................................................................135 2. DATA COMPRESSION OVERVIEW....................................................................................................135 3. OVERVIEW OF CONTEXT-SENSITIVE HUFFMAN CODING.............................................................135 3.1 Example 136 3.2 Decode Tree Example 138 3.3 Encoding/Character Decoding Examples with 1st-order Huffman tables 138 ANNEX G: AN OVERVIEW OF PSIP FOR CABLE (INFORMATIVE) .......................................141 1. INTRODUCTION ..................................................................................................................................141 2. OVERVIEW...........................................................................................................................................141 3. COMPARING CVCT AND TVCT..........................................................................................................141 3.1 Path Select 141 3.2 Out of Band 141 3.3 Major and Minor Channel Numbers 142 3.4 Source IDs 142 4. IN-BAND VERSUS OUT-OF-BAND SYSTEM INFORMATION ...........................................................142 5. USING PSIP ON CABLE......................................................................................................................143 5.1 Terrestrial Virtual Channel Maps on Cable 143 5.2 Use of the Cable VCT 143 5.3 Service Location on Cable 144 5.4 Analog Channel Sharing 144 6. RE-MULTIPLEXING ISSUES ...............................................................................................................145 7. THE TRANSITION TO PSIP ON CABLE IN THE UNITED STATES OF AMERICA ...........................146 8. DATA RATES FOR PSIP ON CABLE .................................................................................................146 AMENDMENT NO. 1 ...................................................................................................................................148 5 ATSC A/65C Program and System Information Protocol 2 January 2006 Index of Tables and Figures Table 4.1 Generic Table Format Used in PSIP 16 Table 4.2 Table ID Ranges and Values (Informative) 17 Table 6.1 Bit Stream Syntax for the System Time Table 23 Table 6.2 Bit Stream Syntax for the Master Guide Table 26 Table 6.3 Table Types 27 Table 6.4 Bit Stream Syntax for the Terrestrial Virtual Channel Table 30 Table 6.5 Modulation Modes 33 Table 6.6 ETM Location 34 Table 6.7 Service Types 34 Table 6.8 Bit Stream Syntax for the Cable Virtual Channel Table 37 Table 6.9 Path Select 38 Table 6.10 Bit Stream Syntax for the Rating Region Table 39 Table 6.11 Bit Stream Syntax for the Event Information Table 43 Table 6.12 ETM Location 44 Table 6.13 Bit Stream Syntax for the Extended Text Table 45 Table 6.14 ETM ID 46 Table 6.15 Bit Stream Syntax for the Directed Channel Change Table 48 Table 6.16 DCC Context 50 Table 6.17 DCC Selection Type Assignments 53 Table 6.18 Demographic Selection Type Assignments 58 Table 6.19 Examples of Selection Code Packing 59 Table 6.20 Categorical Genre Code Assignments 61 Table 6.21 Conditional Type Value Format 63 Table 6.22 County Subdivision Coding 64 Table 6.23 Bit Stream Syntax for the DCC Selection Code Table 67 Table 6.24 Update Type Coding 68 Table 6.25a List and Location of PSIP Descriptors 70 Table 6.25b List and Location of PSIP Descriptors 70 Table 6.26 Bit Stream Syntax for the Caption Service Descriptor 71 Table 6.27 Stream Syntax for the Content Advisory Descriptor 73 Table 6.28 Bit Stream Syntax for the Extended Channel Name Descriptor 74 Table 6.29 Bit Stream Syntax for the Service Location Descriptor 75 Table 6.30 Selected Stream Type Assignments (Informative) 75 Table 6.31 Bit Stream Syntax for the Time Shifted Service Descriptor 76 6 ATSC A/65C Program and System Information Protocol 2 January 2006 Table 6.32 Bit Stream Syntax for the Component Name Descriptor 77 Table 6.33 Bit Stream Syntax for the DCC Departing Request Descriptor 78 Table 6.34 DCC Departing Request Type Assignments 79 Table 6.35 Bit Stream Syntax for the DCC Arriving Request Descriptor 79 Table 6.36 DCC Arriving Request Type Assignments 80 Table 6.37 Bit Stream Syntax for the Redistribution Control Descriptor 81 Table 6.38 Stream Syntax for the Genre Descriptor 82 Table 6.39 Bit Stream Syntax for the Multiple String Structure 82 Table 6.40 Compression Types 83 Table 6.41 Modes 85 Table 7.1 Maximum Cycle Time for the STT, MGT, VCT and RRT 86 Table 7.2 Maximum Rate for Each PSIP Packet Stream 86 Table A1 Structure of Daylight Savings Time Control 87 Table A2 Basic Use of Daylight Savings Fields Through the Year 88 Table C1 Characters with Special Definitions 91 Table C2 Decode Table Format 92 Table C3 Decode Tree Format 93 Table C4 English-language Program Title Encode Table 94 Table C5 English-language Program Title Decode Table 98 Table C6 English-language Program Description Encode Table 102 Table C7 English-language Program Description Decode Table 106 Table D1 An Example of EIT Coverage Times 113 Table D2 The First 3-Hour Segment to be Described in VCT and EIT-0 114 Table D3 The Second 3-Hour Segment to be Described in VCT and EIT-1 114 Table D4 Receiver Behavior with Hidden and Hide Guide Attributes 119 Table E1 Symbols 130 Table E2 Typical Size (bytes) of MGT 130 Table E3 Typical TVCT Size (bytes) 131 Table E4 Typical Size (in bytes per rating region) of RRT 131 Table E5 Typical Size (bytes per virtual channel per EIT) of EIT 132 Table E6 Typical Size (bytes per virtual channel or bytes per event) of ETT 132 Table E7 Typical Size (bytes) of DCCT 132 Table E8 Typical Size (bytes) of DCCSCT 133 Table E9 Typical Sizes of PSIP tables (except ETT) for the Example 133 Table E10 Typical Sizes of ETTs for the Example 134 Table F1 Example Character Set and Frequency of Character Occurrence 136 7 ATSC A/65C Program and System Information Protocol 2 January 2006 Table F2 Decode Tree Example 138 Figure 5.1 Table hierarchy for the Program and System Information Protocol (PSIP). 20 Figure 5.2 Extended Text Tables (ETTs) defined to carry text messages for describing virtual channels and events. 21 Figure D1 Main Structure for the PSIP tables. 112 Figure D2 Extended Text Tables in the PSIP hierarchy. 113 Figure D3 Content of the Master Guide Table. 115 Figure D4 Content of the Virtual Channel Table. 117 Figure D5 Content of EIT-0 for NBZ.S 120 Figure D6 An Instance of a Rating Region Table (RRT). 121 Figure D7 Packetization and Transport of the PSIP tables. 122 Figure D8 Extraction of the VCT from the Transport Stream. 123 Figure D9 Acquisition of audiovisual components. 124 Figure D10 NVOD Example no. one. 126 Figure D11 NVOD Example #2 127 Figure F1 Example Huffman tree. 137 Figure F2 Coding example for the string “The next”. 139 Figure F3 Huffman tree for prior symbol “x”. 140 8 ATSC A/65C Program and System Information Protocol 2 January 2006 ATSC Standard: Program and System Information Protocol for Terrestrial Broadcast and Cable (Revision C) 1. SCOPE This document1 defines a Standard for System Information (SI) and Program Guide (PG) data compatible with digital multiplex bit streams constructed in accordance with ISO/IEC 13818-1 (MPEG-2 Systems). The document defines the standard protocol for transmission of the relevant data tables contained within packets carried in the Transport Stream multiplex. The protocol defined herein is referred to as Program and System Information Protocol (PSIP). This standard was prepared by the Advanced Television Systems Committee (ATSC) Technology and Standards Group (TSG). The document was first approved by the members of the ATSC on 23 December 1997. Revision A was published on 31 May 2000. Revision B to PSIP was the result of incorporating Amendment No. 1A (12 August 2002), Amendment No. 2 (6 August 2002), and Amendment No. 3 (1 April 2002) after their approval by the full ATSC. The cover date of A/65B was 18 March 2003. Further clarifications and revisions were incorporated to produce this document. ATSC Standard A/65C was approved by the full membership on 2 January 2006. For an informative description of the purpose, concepts, and tables defined in this protocol, first-time readers are encouraged to start with Annex D. In addition, a Recommended Practice on PSIP implementation is available as ATSC document A/69, “ATSC Recommended Practice: Program and System Information Protocol Implementation Guidelines for Broadcasters” [20]. A companion document for receiver manufacturers is available from the Consumer Electronics Association: “CEA-CEB12 PSIP Recommended Practice” [15]. 1.1 Application This document describes tables that shall be applicable to terrestrial (over-the-air) and cable signals. Some PSIP tables apply to terrestrial broadcast, some apply to cable, and others apply to both. 1.1.1 Terrestrial Broadcast The following PSIP data shall be included in all ATSC-compliant Transport Streams to be transmitted via terrestrial broadcast: 1 Note: The user’s attention is called to the possibility that compliance with this standard may require use of an invention covered by patent rights. By publication of this standard, no position is taken with respect to the validity of this claim, or of any patent rights in connection therewith. The patent holder has, however, filed a statement of willingness to grant a license under these rights on reasonable and nondiscriminatory terms and conditions to applicants desiring to obtain such a license. Details may be obtained from the publisher. This document will undergo periodic review and may be subject to change by ballot of the ATSC membership 9 ATSC A/65C Program and System Information Protocol 2 January 2006 • The Terrestrial Virtual Channel Table (TVCT) defining, at a minimum, MPEG-2 programs embedded in the Transport Stream in which the TVCT is carried. • The Master Guide Table (MGT) defining the type, packet identifiers, and versions for all the other PSIP tables in this Transport Stream, except for the System Time Table (STT). • The Rating Region Table (RRT) defining the TV parental guideline (rating information) system referenced by any content advisory descriptor carried within the Transport Stream, except the RRT corresponding to rating_region 0x01 (US + possessions).2 • The System Time Table (STT), defining the current date and time of day. • A service_location_descriptor for each digital virtual channel in the VCT. • The first four Event Information Tables (EIT-0, EIT-1, EIT-2 and EIT-3) describing 12 hours of events (TV programs), each with a coverage of 3 hours, and including all of the virtual channels listed in the TVCT. 1.1.2 Cable The following PSIP data shall be included in all ATSC-compliant Transport Streams to be transmitted via cable: • The Cable Virtual Channel Table (CVCT) defining, at a minimum, the virtual channel structure for the collection of MPEG-2 programs embedded in the Transport Stream in which the CVCT is carried. • The Master Guide Table (MGT) defining the type, packet identifiers, and versions for all of the other PSIP tables included in this Transport Stream except for the System Time Table (STT). • The Rating Region Table (RRT) defining the TV parental guideline system (rating information) referenced by any content advisory descriptor carried within the Transport Stream, except the RRT corresponding to rating_region 0x01 (US + possessions).3 • The System Time Table (STT), defining the current date and time of day. 1.2 Organization The sections of this document are organized as follows: • Section 1 — Provides this general introduction. • Section 2 — Lists references and applicable documents. • Section 3 — Provides a definition of terms and a list of acronyms and abbreviations used in this document. • Section 4 — Describes the data structure of the PSIP tables. • Section 5 — Describes the overall table hierarchy. • Section 6 — Describes formats for all of the PSIP tables. 2 Note: Interpretation in a receiver of the rating_region 0x01 RRT requires prior knowledge of CEA-766-A [17]; therefore transmission is unnecessary. A future extension or replacement of the content advisory system for the U.S. is possible by assignment of a new, different rating_region code and creation of new content for an RRT. 3 See footnote 2. 10 ATSC A/65C Program and System Information Protocol 2 January 2006 • Section 7 — Describes PSIP STD model. • Annex A — Describes the daylight savings time control. • Annex B — Describes the assignment of major_channel_number values for terrestrial broadcast in the U.S. • Annex C — Describes the standard Huffman tables for text compression. • Annex D — Provides an overview of PSIP for terrestrial broadcast with application examples. • Annex E — Describes the typical sizes of PSIP tables. • Annex F — Provides an overview of Huffman-based text compression. • Annex G — Provides an overview of the use of PSIP for cable. 2. REFERENCES 2.1 Normative References The following documents are normative references to this Standard: [1] ATSC: “ATSC Digital Television Standard,” Revision E, Advanced Television Systems Committee, Washington, D.C., Document A/53E, 27 December 2005. [2] FIPS: “Federal Information Processing Standard, FIPS Pub 6-4, Counties and Equivalent Entities of the U.S., Its Possessions, and Associated Areas — 90 Aug 31,” U.S. Government Printing Office, Washington, DC 20040, http://www.itl.nist.gov/fipspubs. [3] CEA: “CEA-608-C, Line 21 Data Services,” Consumer Electronics Association, Arlington, VA. [4] CEA: “CEA-708-B, Digital Television (DTV) Closed Captioning,” Consumer Electronics Association, Arlington, VA, 1 June 1997. [5] ISO 639.2, Code for the Representation of Names of Languages — Part 2: alpha-3 code, as maintained by the ISO 639/Joint Advisory Committee (ISO 639/JAC), http://www.loc.gov/standards/iso639-2/iso639jac.html. [6] ISO/IEC 8859, Information Processing — 8-bit Single-Octet Coded Character Sets, Parts 1 through 10. [7] ISO/IEC 10646-1:2000, Information technology — Universal Multiple-Octet Coded Character Set (UCS) — Part 1: Architecture and Basic Multilingual Plane. [8] ITU-T Rec. H.222.0 | ISO/IEC 13818-1:2000, Information Technology — Generic coding of moving pictures and associated audio — Part 1: systems. [9] ITU-T Rec. H.262 | ISO/IEC 13818-2:2000, Information Technology — Generic coding of moving pictures and associated audio — Part 2: video. [10] Unicode Consortium: “The Unicode Standard, Version 3.0,” The Unicode Consortium, Addison-Wesley Pub., ISBN 0201616335. [11] Unicode Consortium: “Unicode Technical Report #6, A Standard Compression Scheme for Unicode,” Revision 3.0, 1999-11-12, The Unicode Consortium. 11 ATSC A/65C Program and System Information Protocol 2 January 2006 [12] CFR: “U.S. Code of Federal Regulations, Title 47, Part 11, Emergency Alert System (EAS),” U.S. Government Printing Office, Washington, DC 20040, http://www.fcc.gov/wtb/rules.html. [13] CFR: “U.S. Code of Federal Regulations, Title 47, Part 73, Broadcast Radio Services,” U.S. Government Printing Office, Washington, DC 20040, http://www.fcc.gov/wtb/rules.html. 2.2 Informative References [14] ATSC: “Data Broadcast Standard,” Advanced Television Systems Committee, Washington, D.C., Document A/90, 26 July 2000.. [15] CEA: “CEA-CEB12, PSIP Recommended Practice,” Consumer Electronics Association, Arlington, VA, September 2002. [16] CEA: “CEA-766-A, Specification for U.S. and Canadian Rating Region Table (RRT) and Content Advisory Descriptor for Transport of Content Advisory Information Using ATSC A/65A Program and System Information Protocol (PSIP),” Consumer Electronics Association, Arlington, VA, April 2001. [17] ISO/IEC 11172-2:1993, Information technology – Coding of moving pictures and associated audio for digital storage media at up to about 1.5 Mbit/s -- Part 2: Video. [18] SCTE: “ANSI/SCTE 07 2000, Digital Video Transmission Standard for Cable Television,” Society of Cable Telecommunications Engineers, http://www.scte.org/. [19] CFR: “U.S. Code of Federal Regulations, Title 47, Part 15, Radio Frequency Devices,” U.S. Government Printing Office, Washington, DC 20040, http://www.fcc.gov/wtb/rules.html. [20] ATSC: “Program and System Information Protocol Implementation Guidelines for Broadcasters,” Advanced Television Systems Committee, Washington, D.C., Document A/69, 25 June 2002. 3. DEFINITIONS 3.1 Compliance Notation As used in this document, “shall” denotes a mandatory provision of the standard. “Should” denotes a provision that is recommended but not mandatory. “May” denotes a feature whose presence does not preclude compliance, that may or may not be present at the option of the implementer. 3.2 Acronyms and Abbreviations The following acronyms and abbreviations are used within this specification: ATSC Advanced Television Systems Committee bslbf bit serial, leftmost bit first BMP basic multilingual plane CAT Conditional Access Table 12 ATSC A/65C Program and System Information Protocol 2 January 2006 CRC cyclic redundancy check CVCT Cable Virtual Channel Table DCC Directed Channel Change DCCRR DCC capable DTV reference receiver DCCSCT DCC Selection Code Table DET Data Event Table DTV digital television EPG electronic program guide EIT Event Information Table EMM entitlement management message ETM Extended Text Message ETT Extended Text Table GPS Global Positioning System PSIP Program and System Information Protocol MGT Master Guide Table MPAA Motion Picture Association of America MPEG Moving Picture Experts Group 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 - The collection of all the TS_program_map_section()s. PTC physical transmission channel SCTE Society of Cable Telecommunications Engineers SI system information STD System Target Decoder STT System Time Table rpchof remainder polynomial coefficients, highest order first RRT Rating Region Table TS Transport Stream TVCT Terrestrial Virtual Channel Table unicode Unicode™ UTC Coordinated Universal Time4 4 Since unanimous agreement could not be achieved by the ITU on using either the English word order, CUT, or the French word order, TUC, a compromise to use neither was reached. 13 ATSC A/65C Program and System Information Protocol 2 January 2006 uimsbf unsigned integer, most significant bit first VCT Virtual Channel Table. Used in reference to either TVCT or CVCT. 3.3 Definition of Terms The following terms are used throughout this document: descriptor – A data structure of the format: descriptor_tag, descriptor_length, and a variable amount of data. The tag and length fields are each 8 bits. The length specifies the length of data that begins immediately following the descriptor_length field itself. A descriptor whose descriptor_tag identifies a type not recognized by a particular decoder shall be ignored by that decoder. Descriptors can be included in certain specified places within PSIP tables, subject to certain restrictions (see Table 6.25). Descriptors may be used to extend data represented as fixed fields within the tables. They make the protocol very flexible since they can be included only as needed. New descriptor types can be standardized and included without affecting receivers that have not been designed to recognize and process the new types. digital channel – A set of one or more digital elementary streams. See virtual channel. event – A collection of associated program elements that have a common timeline for a defined period. An event is equivalent to the common industry usage of “television program.” An event may also be an analog “television program.” instance – See table instance. logical channel – See virtual channel. physical channel – A generic term to refer to the each of the 6–8 MHz frequency bands where television signals are embedded for transmission. Also known as the physical transmission channel (PTC). One analog virtual channel fits in one PTC but multiple digital virtual channels typically coexist in one PTC. physical transmission channel – See physical channel. program element – A generic term for one of the elementary streams or other data streams that may be included in a program. For example: audio, video, data, etc. program – A collection of program elements. Program elements may be elementary streams. Program elements need not have any defined time base; those that do have a common time base are intended for synchronized presentation. The term program is also commonly used in the context of a “television program” such as a scheduled daily news broadcast. In this specification the term “event” is used to refer to a “television program” to avoid ambiguity. region – As used in this document, a region is a geographical area consisting of one or more countries. section – A data structure comprising a portion of an ISO/IEC 13818-1 defined table, such as the Program Association Table (PAT), Conditional Access Table (CAT), or Program Map Table (PMT). All sections begin with the table_id and end with the CRC_32 field, and their starting points within a packet payload are indicated by the pointer_field mechanism defined in the ISO/IEC 13818-1 International Standard [8]. stream – An ordered series of bytes. The usual context for the term stream is the series of bytes extracted from Transport Stream packet payloads which have a common unique PID value (e.g., video PES packets or Program Map Table sections). 14 ATSC A/65C Program and System Information Protocol 2 January 2006 table – The collection of re-assembled sections bearing a common table_id and version number5. table instance – Tables are identified by the table_id field. However, in cases such as the Event Information Table, several instances of a table are defined simultaneously. All instances are conveyed in Transport Stream packets of the same PID value and have the same table_id field value. Each instance has a different table_id_extension value. The term table_id_extension is the generic label for the field per Table 4.1; it is renamed as appropriate for specific tables. virtual channel – A virtual channel is the designation, usually a number, that is recognized by the user as the single entity that will provide access to an analog TV program or a set of one or more digital elementary streams. It is called “virtual” because its identification (name and number) may be defined independently from its physical location. Examples of virtual channels are: digital radio (audio only), a typical analog TV channel, a typical digital TV channel (composed of one audio and one video stream), multi-visual digital channels (composed of several video streams and one or more audio tracks), or a data broadcast channel (composed of one or more data streams). In the case of an analog TV channel, the virtual channel designation will link to a specific physical transmission channel. In the case of a digital TV channel, the virtual channel designation will link both to the physical transmission channel and to the particular video and audio streams within that physical transmission channel. 3.4 Section and Data Structure Syntax Notation This document contains symbolic references to syntactic elements. These references are typographically distinguished by the use of a different font (e.g., restricted), may contain the underscore character (e.g., sequence_end_code) and may consist of character strings that are not English words (e.g., dynrng). The formats of sections and data structures in this document are described using a C-like notational method employed in ISO/IEC 13818-1 [8]. 4. DATA STRUCTURE This section describes the data structure common to all PSIP tables. 4.1 Table Format Tables defined in this Standard are derived from the “long” form of the MPEG-2 private_section defined in sections 2.4.4.10 and 2.4.4.11 of ISO/IEC 13818-1 [8]. The table format common to all PSIP tables is given in Table 4.1. An additional field, protocol_version, has been added as a consistent first byte of every PSIP table section. 5 Note that this definition of table constrains version-number to apply to the collection of sections as contrasted to each section. 15 ATSC A/65C Program and System Information Protocol 2 January 2006 Table 4.1 Generic Table Format Used in PSIP Syntax No. of Bits Format PSIP_section() { table_id 8 uimsbf 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 bslbf section_number 8 uimsbf last_section_number 8 uimsbf protocol_version 8 uimsbf PSIP_table_data() * CRC_32 32 rpchof } – The value of this 8-bit field shall identify the PSIP Table to which this section belongs. table_id Tables defined in this PSIP Standard, and any created in other ATSC Standards are considered “private” with respect to ISO/IEC 13818-1 [8] and standard with respect to other ATSC Standards. Table 4.2 lists Table ID ranges and values. 16 ATSC A/65C Program and System Information Protocol 2 January 2006 Table 4.2 Table ID Ranges and Values (Informative) Table ID Tables PID Ref. Value (hex) ISO/IEC 13818-1 Sections: 0x00 Program Association Table (PAT) 0x0000 Ref. [9] 0x01 Conditional Access Table (CAT) 0x0001 Ref. [9] 0x02 Program Table (PMT) per PAT Ref. [9] 0x03-0x3F [ISO reserved] User Private Sections: 0x40-0xBF [User Private] Other documents: 0xC0-0xC6 [ATSC coordinated values which are defined in other standards.] PSIP tables: 0xC7 Master Guide Table (MGT) 0x1FFB Sec.6.2 0xC8 Terrestrial Virtual Channel Table (TVCT) 0x1FFB Sec.6.3.1 0xC9 Cable Virtual Channel Table (CVCT) 0x1FFB Sec.6.3.2 0xCA Rating Region Table (RRT) 0x1FFB Sec.6.4 0xCB Event Information Table (EIT) per MGT Sec.6.5 0xCC Extended Text Table (ETT) per MGT Sec.6.6 0xCD System Time Table (STT) 0x1FFB Sec.6.1 0xCE-0xD2 [ATSC coordinated values which are defined in other standards.] 0xD3 Directed Channel Change Table (DCCT) 0x1FFB Sec.6.7 0xD4 Directed Channel Change Selection Code Table (DCCSCT) 0x1FFB Sec.6.8 0xD5-0xDF [ATSC coordinated values which are defined in other standards.] 0xE0-0xE5 [Used in other systems] 0xE6-0xFE [Reserved for future ATSC use] section_syntax_indicator – This 1-bit field shall be set to ‘1’ to always indicate the “long” form of the MPEG-2 private_section table. private_indicator – This 1-bit field shall be set to ‘1’. private_section_length – A 12-bit field. It specifies the number of remaining bytes in the private section immediately following this field up to and including the CRC_32 field. The value in this field shall not exceed 4093 (0xFFD). table_id_extension – This is a 16-bit field and is table-dependent. It shall be considered to be logically part of the table_id field providing the scope for the remaining fields. version_number – This 5-bit field is the version number of the PSIP_section. The version_number shall be incremented by 1 modulo 32 when a change in the information carried within the PSIP_section occurs. When the current_next_indicator is set to '0', then the version_number shall be that of the next applicable PSIP_section with the same table_id, table_id_extension, and section_number. current_next_indicator – A 1-bit field, which when set to '1' indicates that the PSIP_section sent is currently applicable. When the current_next_indicator is set to '1', then the version_number shall be that of the currently applicable PSIP_section. When the bit is set to '0', it indicates that the PSIP_section sent is not yet applicable and shall be the next PSIP_section with the same section_number, table_id_extension, and table_id to become valid. 17 ATSC A/65C Program and System Information Protocol 2 January 2006 section_number – This 8-bit field gives the number of the PSIP_section. The section_number of the first section in a PSIP table shall be 0x00. The section_number shall be incremented by 1 with each additional section in PSIP table. The scope of the section_number shall be defined by the table_id and table_id_extension. That is, for each PSIP table and value of the table_id_extension field, there is the potential for the full range of section_number values. last_section_number – This 8-bit field specifies the number of the last section (that is, the section with the highest section_number) of the PSIP table of which this section is a part. Its scope is the same as for the section_number field. protocol_version – An 8-bit unsigned integer field whose function is to allow, in the future, this table type to carry parameters that may be structured differently than those defined in the current protocol. At present, the only valid value for protocol_version is zero. Non-zero values of protocol_version may be used by a future version of this standard to indicate structurally different tables. CRC_32 – This is a 32-bit field that contains the CRC value that gives a zero output of the registers in the decoder defined in ISO/IEC 13818-1[8], Annex A after processing the entire private section. Note that individual PSIP tables defined in this Standard may further constrain the above fields. But when not further constrained in each table, the above semantics shall apply. 4.2 Extensibility The PSIP protocol describes a number of tables conveying system information and content guide data structures. The Standard is designed to be extensible via the following mechanisms: Reserved fields – Fields in this Standard marked reserved shall be reserved for use either when revising this Standard, or when another standard is issued that builds upon this one. See Section 4.4. Standard table types – As indicated in Table 4.2, table_id values in the range 0xCE to 0xD2, 0xD5 to 0xDF and 0xE6-0xFE shall be reserved for use either when revising this PSIP Standard, or when another standard is issued. Protocol version field – Future substantive structural modifications shall be accommodated by defining different protocol version numbers. Backwards compatible additions or modifications may be added without incrementing the protocol version number. Table length extensions – Future amendments to this Standard may include new fields at the ends of certain tables. Tables that may be extensible in this way include those in which the last byte of the field just preceding the CRC may be determined without use of the section_length field. Such an extension is a backwards compatible addition. Descriptor length extensions – Future amendments to this Standard may include new fields at the ends of certain descriptors. Descriptors extensible in this way include those in which the last byte of the last currently defined field may be determined without the use of the descriptor_length field. 4.3 User Private Ranges Certain fields in this Standard are defined to include “user private” ranges: 18 ATSC A/65C Program and System Information Protocol 2 January 2006 • table_id values in the range 0x40 through 0xBF • MGT table_type values in the range 0x0400 through 0x0FFF Table sections with table_id values in the user private range (0x40 through 0xBF) shall not appear in transport packets identified with the base_PID PID value (0x1FFB). The MGT may refer to private table sections with any value of table_id including values in the user private range. Refer to Section 6.2 for a discussion of the use of the MPEG-2 Registration Descriptor in the MGT with respect to delivery of private table sections. 4.4 Reserved Fields reserved — Fields in this PSIP Standard marked “reserved” shall not be assigned by the user, but shall be available for future use. Decoders are expected to disregard reserved fields for which no definition exists that is known to that unit. Each bit in the fields marked “reserved” shall be set to one until such time as it is defined and supported. 5. TABLE HIERARCHY AND STRUCTURE REQUIREMENTS The Program and System Information Protocol (PSIP) is a collection of hierarchically arranged tables for describing system information and program guide data. These tables are packetized and multiplexed according to the transport protocol detailed in ISO/IEC 13818-1[8]. The base PID (base_PID) is an explicitly defined value (0x1FFB) used to identify the TS packets for the following tables for terrestrial and cable systems6: • The System Time Table (STT) • Master Guide Table (MGT) • Rating Region Table (RRT) • Virtual Channel Table (VCT) • The optional Directed Channel Change Table (DCCT) • The optional Directed Channel Change Selection Code Table (DCCSCT) Several Event Information Tables (EIT) are also part of the PSIP data structures, with their PIDs explicitly defined in the MGT. Figure 5.1 illustrates the relations between these elements. 6 The ATSC DTV Standards do not define a Network Information Table (NIT) as specified in MPEG-2 Systems. The use of program_number 0x0000 in the PAT to point to the PSIP base_PID (0x1FFB) should be avoided as MPEG-2 Systems reserves this value for the network_PID, which in turn is used to identify the TS packets of a NIT. See A/53E [1], Annex C for further details. 19 ATSC A/65C Program and System Information Protocol 2 January 2006 Base_PID STT RRT DCCT DCCSCT MGT PID-K PID-L PID-M PID-N VCT EIT-0 EIT-1 EIT-2 EIT-3 For channel x source_id source_id source id source_id source_id For channel y source_id source_id source_id source id source_id Figure 5.1 Table hierarchy for the Program and System Information Protocol (PSIP). As the name indicates, the System Time Table (STT) carries time information needed for any application requiring synchronization. The Rating Region Table (RRT) defines rating tables valid for different regions or countries. The Master Guide Table (MGT) defines sizes, PIDs, and version numbers for all of the relevant tables. The Virtual Channel Table (VCT) actually exists in two versions: one for terrestrial and a second one for cable applications. Its purpose is to tabulate virtual channel attributes required for navigation and tuning. The terrestrial and cable versions are similar in structure, with the latter redefining the semantics of some fields pertinent to cable operations. The optional Directed Channel Change Table carries requests for a receiver to switch to specified virtual channels at specified times under specified circumstances. The optional Directed Channel Change Selection Code Table permits extension of the basic genre category and location code tables defined here. Each of the Event Information Tables (EITs) lists TV programs (events) for the virtual channels described in the VCT. The EITs are sequentially and chronologically organized from EIT-0 to EIT-127. The first table (EIT-0) corresponds to the currently valid list of events. The second table (EIT-1) corresponds to the next time window, and so on. 20 ATSC A/65C Program and System Information Protocol 2 January 2006 During remultiplexing, EIT tables which originally existed in separate Transport Streams may be multiplexed into a common Transport Stream or vice versa. For this reason, it is very convenient to synchronize the start times and durations of the EITs. Consequently, the next three synchronization rules shall be followed when EIT tables are prepared. • Requirement 1: Each EIT shall have a duration of 3 hours. • Requirement 2: Start times for EITs are restricted to 0:00 (midnight), 3:00, 6:00, 9:00, 12:00 (noon), 15:00, 18:00 and 21:00. All of these times are UTC. • Requirement 3: EIT-0 lists all of the available events for the current 3-hour time segment. EIT-1 lists all of the available events for the next 3-hour time segment, and likewise, non-overlapping sequential time windows are allocated for all of the other EITs. For example, a broadcast group operating in the Eastern time zone of the U.S. at 15:30 EDT (19:30 UTC) is required to carry EIT-0 describing events from 14:00 to 17:00 EDT (18:00 to 21:00 in UTC time) plus EIT-1, EIT-2, and EIT-3 covering the next 9-hour interval between 17:00 to 2:00 EDT. At 17:00 EDT, the first table, EIT-0, will be obsolete while EIT-1 will still be valid. At this time, simply by shifting the listed PID values in the MGT, EIT-1 becomes EIT- 0 and EIT-2 becomes EIT-1. Updating tables then becomes a process of shifting the list of PIDs in the MGT and their corresponding version numbers. However, updates and/or corrections to the information in the EITs may be performed at any time since the decoder monitors the MGT continuously, where the most current copy of the version number is maintained. Updates and/or corrections to the EIT (other than shifting) shall be signaled by increasing the version number by one. Besides listing the PIDs for all of the EITs, the Master Guide Table (MGT) also lists a set of PIDs for Extended Text Tables (ETTs). The ETTs carry relatively long text messages for describing events and virtual channels. Each EIT has either zero or one associated ETT. Similarly, The VCT has either zero or one associated ETT. Figure 5.2 illustrates the concept. MGT PID-X PID-Y PID-Z PID-V ETT-0 ETT-1 ETT-2 ETT-V text message text message text message for EIT-0 for EIT-1 for EIT-2 text message for VCT Figure 5.2 Extended Text Tables (ETTs) defined to carry text messages for describing virtual channels and events. 21 ATSC A/65C Program and System Information Protocol 2 January 2006 5.1 Requirements for Terrestrial Broadcast The rules governing the transport of PSIP tables for terrestrial broadcast are: • Requirement 4: Every digital Transport Stream in terrestrial broadcast shall include the STT, the TVCT, the MGT, and the first four Event Information Tables (EIT-0, EIT-1, 7 EIT-2 and EIT-3) . The CVCT, all of the other EITs and the whole collection of ETTs may be present but are not required. An RRT defining the rating system for a given region shall be included in the TS if any content_advisory_descriptor in use refers to that region, unless that region has explicit standards that define the rating system and the meaning of the values in the content_advisory_descriptor. • Requirement 5: The PSIP tables shall describe all of the digital channels multiplexed in the Transport Stream. For convenience, the tables may optionally include information about analog channels as well as other digital channels available in different Transport Streams. 5.2 Requirements for Cable The rules governing the transport of PSIP tables for cable are: • Requirement 6: The required tables for a cable system are: the STT,either the CVCT or the TVCT, and the MGT. For any region that makes use of the capability to change the RRT, that RRT shall be included in the TS if any content_advisory_descriptor in use refers to that region. An RRT defining the rating system for a given region shall be included in the TS if any content_advisory_descriptor in use refers to that region, unless that region has explicit standards that define the rating system and the meaning of the values in the content_advisory_descriptor. • Requirement 7: The PSIP tables shall describe all of the digital channels multiplexed in the Transport Stream. For convenience, the tables may optionally include information about analog channels as well as other digital channels available in different Transport Streams. 6. SPECIFICATIONS This chapter describes the bit stream syntax and semantics for the System Time Table (STT), Master Guide table (MGT), Virtual Channel Table (VCT), Rating Region Table (RRT), Event Information Table (EIT), Extended Text Table (ETT), the optional Directed Channel Change Table (DCCT), the optional Directed Channel Change Selection Code Table (DCCSCT), core descriptors, and the multiple string structure. 6.1 System Time Table (STT) The System Time Table provides the current date and time of day information. The following constraints apply to the Transport Stream packet carrying the STT: • PID for STT shall have the value 0x1FFB (base_PID) • transport_scrambling_control bits shall have the value ‘00’ • adaptation_field_control bits shall have the value ‘01’ 7 Exception: test signals may or may not be included in EIT/ETT data. 22 ATSC A/65C Program and System Information Protocol 2 January 2006 The bit stream syntax for the System Time Table shall be as shown in Table 6.1. Table 6.1 Bit Stream Syntax for the System Time Table Syntax No. of 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 (i=0; i