Series J: Cable Networks and Transmission of Television, Sound Programme and Other Multimedia Signals
Series J: Cable Networks and Transmission of Television, Sound Programme and Other Multimedia Signals
Series J: Cable Networks and Transmission of Television, Sound Programme and Other Multimedia Signals
ITU-T J.94
TELECOMMUNICATION (10/2016)
STANDARDIZATION SECTOR
OF ITU
Summary
Recommendation ITU-T J.94 specifies Service Information (SI) describing the services residing
within streams constructed in accordance with Recommendation ITU-T H.222.0 | ISO/IEC 13818-1
(MPEG-2 Systems). This Recommendation defines the standard protocol for transmission of the
relevant SI data tables carried in the MPEG-2 Transport Stream multiplex.
History
Edition Recommendation Approval Study Group Unique ID*
1.0 ITU-T J.94 1998-11-19 9 11.1002/1000/4346
1.1 ITU-T J.94 (1998) Amd. 1 2000-10-06 9 11.1002/1000/5167
1.2 ITU-T J.94 (1998) Amd. 2 2001-03-09 9 11.1002/1000/5377
1.3 ITU-T J.94 (1998) Amd. 3 2016-03-15 9 11.1002/1000/12763
2.0 ITU-T J.94 2016-10-14 9 11.1002/1000/13048
* To access the Recommendation, type the URL http://handle.itu.int/ in the address field of your web
browser, followed by the Recommendation's unique ID. For example, http://handle.itu.int/11.1002/1000/11
830-en.
NOTE
In this Recommendation, the expression "Administration" is used for conciseness to indicate both a
telecommunication administration and a recognized operating agency.
Compliance with this Recommendation is voluntary. However, the Recommendation may contain certain
mandatory provisions (to ensure, e.g., interoperability or applicability) and compliance with the
Recommendation is achieved when all of these mandatory provisions are met. The words "shall" or some other
obligatory language such as "must" and the negative equivalents are used to express requirements. The use of
such words does not suggest that compliance with the Recommendation is required of any party.
ITU 2017
All rights reserved. No part of this publication may be reproduced, by any means whatsoever, without the prior
written permission of ITU.
1 Scope
The scope of this Recommendation defines the Service Information that conveys the relevant
description of the services contained in a multiplex of audio, video, and data that is distributed by
cable networks (e.g., CATV systems). [ITU-T J.83] defines the transmission characteristics for digital
multi-programme signals distributed through cable networks.
NOTE – The service information is specified to be contained within the MPEG-2 transport layer as Program
Specific Information (PSI). This mechanism provides some ancillary data capacity in the forward channel,
which can be used to accommodate the needs of other services such as program guides (a description of the
provision and characteristics of these services is outside the scope of this Recommendation).
Being highly flexible, the MPEG-2 transport layer can be configured to deliver any desired mix of
television, sound and data signals (with sound either related or unrelated to the video signal content,
and at various possible levels of quality).
This Recommendation is intended to ensure that the designers and operators of cable distribution
(e.g., CATV) networks carrying multi-programme signals will have the information they need to be
able to establish and maintain fully satisfactory networks. It also provides the information needed by
the designers and manufacturers of equipment (including receivers) for digital multi-programme
signals distributed by cable networks.
2 References
The following ITU-T Recommendations and other references contain provisions which, through
reference in this text, constitute provisions of this Recommendation. At the time of publication, the
editions indicated were valid. All Recommendations and other references are subject to revision;
users of this Recommendation are therefore encouraged to investigate the possibility of applying the
most recent edition of the Recommendations and other references listed below. A list of the currently
valid ITU-T Recommendations is regularly published. The reference to a document within this
Recommendation does not give it, as a stand-alone document, the status of a Recommendation.
[ITU-T H.222.0] Recommendation ITU-T H.222.0 (2014) | ISO/IEC 13818-1:2015,
Information technology – Generic coding of moving pictures and
associated audio information: Systems.
[ITU-T J.83] Recommendation ITU-T J.83 (2007), Digital multi-programme systems for
television, sound and data services for cable distribution.
[EBU SPB 492] EBU SPB 492 (1992), Teletext specification (625-line Television Systems).
[ETR 162] ETR 162, Digital Video Broadcasting (DVB); Allocation of Service
Information (SI) codes for DVB systems.
[ETR 154] ETR 154, Digital Video Broadcasting (DVB); Implementation guidelines
for the use of MPEG-2 Systems, Video and Audio in satellite, cable and
terrestrial broadcasting applications.
[ETR 211] ETR 211, Digital Video Broadcasting (DVB); Guidelines on
implementation and usage of Service Information (SI).
[IEC 61883] IEC Publication 61883 (1998), Consumer audio/video equipment – Digital
interface. (Parts 1 and 4.)
[IEEE 1394] IEEE 1394, High Performance Serial Bus.
5 Conventions
None.
A.1 Scope
This annex is derived from work done in Europe and is based upon the European Telecommunication
Standard (ETS) 300 468. It specifies the service information (SI) data which forms a part of digital
video broadcasting (DBV) bitstreams, in order that the user can be provided with information to assist
in selection of services and/or events within the bitstream, and so that the integrated receiver decoder
(IRD) can automatically configure itself for the selected service. SI data for automatic configuration
is mostly specified within [ITU-T H.222.0] as program specific information (PSI). This annex
specifies additional data which complement the PSI by providing data to aid automatic tuning of
IRDs, and additional information intended for display to the user. The manner of presentation of the
information is not specified in this annex, and IRD manufacturers have the freedom to choose
appropriate presentation methods.
It is expected that electronic programme guides (EPGs) will be a feature of digital TV transmissions.
The definition of an EPG is outside the scope of the SI specification, but the data contained within
the SI specified here may be used as the basis for an EPG.
Rules of operation for the implementation of this annex are specified in [ETR 211].
A.2 References
For references, see clause 2.
A.6 Descriptors
This subclause describes the different descriptors that can be used within the SI (for further
information, refer to [ETR 211] ).
A.6.1 Descriptor identification and location
Table A.12 lists the descriptors defined within this annex, giving the descriptors-tag values and the
intended placement within the SI tables. This does not imply that their use in other tables is restricted.
Movie/Drama
0x1 0x0 Movie/drama (general)
0x1 0x1 Detective/thriller
0x1 0x2 Adventure/western/war
0x1 0x3 Science fiction/fantasy/horror
0x1 0x4 Comedy
0x1 0x5 Soap/melodrama/folkloric
0x1 0x6 Romance
0x1 0x7 Serious/classical/religious/historical movie/drama
0x1 0x8 Adult movie/drama
0x1 0x9 to 0xE Reserved for future use
0x1 0xF User-defined
News/Current affairs
0x2 0x0 News/current affairs (general)
0x2 0x1 News/weather report
0x2 0x2 News magazine
0x2 0x3 Documentary
0x2 0x4 Discussion/interview/debate
0x2 0x5 to 0xE Reserved for future use
0x2 0xF User-defined
Show/Game show
0x3 0x0 Show/game show (general)
0x3 0x1 Game show/quiz/contest
0x3 0x2 Variety show
0x3 0x3 Talk show
0x3 0x4 to 0xE Reserved for future use
0x3 0xF User-defined
Children’s/Youth programmes
0x5 0x0 Children’s/youth programmes (general)
0x5 0x1 Pre-school children’s programmes
0x5 0x2 Entertainment programmes for 6 to14
0x5 0x3 Entertainment programmes for 10 to 16
0x5 0x4 Informational/educational/school programmes
0x5 0x5 Cartoons/puppets
0x5 0x6 to 0xE Reserved for future use
0x5 0xF User-defined
Music/Ballet/Dance
0x6 0x0 Music/ballet/dance (general)
0x6 0x1 Rock/pop
0x6 0x2 Serious music/classical music
0x6 0x3 Folk/traditional music
0x6 0x4 Jazz
0x6 0x5 Musical/opera
0x6 0x6 Ballet
0x6 0x7 to 0xE Reserved for future use
0x6 0xF User-defined
Social/Political issues/Economics
0x8 0x0 Social/political issues/economics (general)
0x8 0x1 Magazines/reports/documentary
0x8 0x2 Economics/social advisory
0x8 0x3 Remarkable people
0x8 0x4 to 0xE Reserved for future use
0x8 0xF User-defined
Leisure hobbies
0xA 0x0 Leisure hobbies (general)
0xA 0x1 Tourism/travel
Special Characteristics
0xB 0x0 Original language
0xB 0x1 Black & white
0xB 0x2 Unpublished
0xB 0x3 Live broadcast
0xB 0x4 to 0xE Reserved for future use
0xB 0xF User-defined
0xC to 0xE 0x0 to 0xF Reserved for future use
0xF 0x0 to 0xF User-defined
symbol_rate: The symbol_rate is a 28-bit field giving the 4-bit BCD values specifying 7 characters
of the symbol_rate in Msymbol/s where the decimal point occurs after the third character
(e.g., 027.4500).
modulation: This is a 5-bit field. It specifies the modulation scheme used on a satellite delivery
system according to Table A.28.
symbol_rate: The symbol_rate is a 28-bit field giving the 4-bit BCD values specifying 7 characters
of the symbol_rate in Msymbol/s where the decimal point occurs after the third character
(e.g., 027.4500).
FEC_inner: The FEC_inner is a 4-bit field specifying the inner FEC scheme used according to
Table A.25.
A.6.2.8.3 Terrestrial delivery system descriptor
See Table A.29.
constellation: This is a 2-bit field. It specifies the constellation pattern used on a terrestrial delivery
system according to Table A.31.
code_rate: The code_rate is a 3-bit field specifying the inner FEC scheme used according
to Table A.33. Non-hierarchical channel coding and modulation requires signalling of one code rate.
In this case, 3 bits specifying code_rate according to Table A.34 are followed by another 3 bits of
value '000'. Two different code rates may be applied to two different levels of modulation with the
aim of achieving hierarchy. Transmission then starts with the code rate for the HP level of the
modulation and ends with the one for the LP level.
guard_interval: The guard_interval is a 2-bit field specifying the guard interval values.
See Table A.34.
Table A.34 – Signalling format for each of the guard interval values
guard_interval Guard interval values
00 1/32
01 1/16
10 1/8
11 1/4
transmission_mode: This 2-bit field indicates the number of carriers in an OFDM frame.
See Table A.35.
centre_frequency: This is as defined in the delivery_system_descriptor for the delivery system given
by the coding_type.
A.6.2.11 Linkage descriptor
The linkage descriptor (see Table A.39) identifies a service that can be presented if the consumer
requests for additional information related to a specific entity described by the SI system. The location
of the linkage descriptor in the syntax indicates the entity for which additional information is
available. For example a linkage descriptor located within the NIT shall point to a service providing
additional information on the network, a linkage descriptor in the BAT shall provide a link to a service
informing about the bouquet, etc.
A CA replacement service can be identified using the linkage descriptor. This service may be selected
automatically by the IRD if the CA denies access to the specific entity described by the SI system.
logical_cell_presentation_info: This 3-bit field identifies the type of presentation for a logical cell.
The logical_cell_presentation information allows an identification of presentation styles, which are
defined in Table A.46.
bouquet_id: This is a 16-bit field which serves as a label to identify the bouquet described by the cell.
original_network_id: This 16-bit field is a label (see clause A.5.2) which in conjunction with the
following fields uniquely identifies a service, event or mosaic.
transport_stream_id: This is a 16-bit field which serves as a label identifying the TS which contains
the service, event or mosaic described by the cell.
service_id: This is a 16-bit field which identifies a service within a TS. The service_id is the same as
the program_number in the corresponding program_map_section.
The interpretation of this field is context sensitive, dependent on the value of cell_linkage_info:
– when cell_linkage_info "0x02", this is the service_id of the service described by the cell;
– when cell_linkage_info = "0x03", this is the service_id of the mosaic service described by
the cell;
– when cell_linkage_info = "0x04", this is the service_id of the service to which the event
described by the cell belongs.
event_id: This is a 16-bit field containing the identification number of the described event.
A.6.2.14 Multilingual bouquet name descriptor
The multilingual bouquet name descriptor (see Table A.48) provides the bouquet name in text form
in one or more languages.
NOTE – Due to implementation constraints, the specified buffer size value considers spare capacity that may
be required in a 2 kbyte RAM for packet jitter.
sb_leak_rate: This 6-bit field indicates the value of the leak rate from the buffer, and is coded
according to Table A.59.
service_provider_name_length: This 8-bit field specifies the number of bytes that follow the
service_provider_name_length field for describing characters of the name of the service provider.
char: This is an 8-bit field. A string of char fields specify the name of the service provider or service.
Text information is coded using the character sets and methods described in Annex D.
service_name_length: This 8-bit field specifies the number of bytes that follow the
service_name_length field for describing characters of the name of the service.
The POD module may perform various transport, filtering, and error checking/correction functions
on the out-of-band data stream as depicted by the box labelled "Transport Processing, Filtering, and
Routing." As described in SCTE DVS 216r4 (2000), the Host may request from the POD module to
open one or several "flows" in which to receive PSI sections taken from the cable out-of-band data
stream. Each flow is associated with a PID value, in accordance with MPEG-2 Transport Stream
concepts.
Data flowing to the Host from the POD module that is associated with Service_type=MPEG_section is
required to be in the form of MPEG PSI data structures. However, data delivered into the POD from
cable out-of-band may or may not be organized in a Transport Stream compliant with ITU-T H.222.0
| ISO/IEC 13818-1. In other words, PID values associated with MPEG-2 tables on the Extended
Channel interface may or may not correspond to MPEG-2 Transport Stream packet header PID values
from the cable out of band.
Independent of the fact that out-of-band data may reach the POD module via a proprietary method,
the data structures delivered across the Extended Channel shall be formatted as MPEG-2 table
sections. Like table sections carried in an MPEG-2 Transport Stream, each is associated with a PID
value.
B.1.3 Organization
This annex is organized as follows:
– Clause B.1 – Provides a general introduction.
– Clause B.2 – Lists applicable references.
– Clause B.3 – Provides a list of definitions used in this annex.
– Clause B.4 – Provides a list of acronyms and abbreviations used in this annex.
– Clause B.5 – Describes the basic structure of sections.
B.2 References
For references, see clause 2.
B.3 Definitions
B.3.1 Compliance notation
As used in this annex, "shall" denotes a mandatory provision of the recommendation. "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 as optional for the implementers.
B.3.2 Definition of terms
The following terms are used throughout this annex:
B.3.2.1 conditional access: The control and security of subscriber access to cable or broadcast
services and events in the form of video, data and voice communications.
B.3.2.2 host: A device capable of supporting a POD module by implementing the interface protocol
defined in SCTE DVS 131r7 (1998) and SCTE DVS 216r4 (2000). These protocols define the
Extended Channel data path through which the SI tables defined in this annex are passed.
B.3.2.3 navigation: The process of selection and movement among analogue and digital services
offered on the cable network. The service information tables defined in this protocol assist in the
navigation process by providing physical service locations, channel names and numbers for user
reference. Those tables supporting electronic program guides also assist the navigation process.
B.3.2.4 program element: A generic term for one of the elementary streams or other data streams
that may be included in a program.
B.3.2.5 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 used in the context of a "television
program" such as a scheduled daily news broadcast. The distinction between the two usages should
be understood by context.
B.3.2.6 region: As used in this annex, a region is a geographical area consisting of one or more
countries.
1 The Base PID is the PID associated with the "base" Service Information tables. In this protocol, the base_PID
is fixed at 0x1FFC. Refer to Table B.2.
In the byte count column, items that are conditional (because they are within a loop or conditional
statement) are in parentheses. Nested parentheses are used if the loops or conditions are nested.
Table sections defined in this Service Information annex, and any created as user extensions to it are
considered "private" with respect to ITU-T H.222.0 | ISO/IEC 13818-1. Table section types 0x80
through 0xBF are user-defined (outside the scope of this Service Information annex).
The maximum total length of any table section defined in this annex is 1024 bytes, except for the
MGT, L-VCT, AEIT and AETT, each of which has a maximum total length of 4096 bytes. This total
includes table_ID, CRC, and all fields contained within the specific table section.
B.5.2 Extensibility
This Service Information annex defines a number of tables and table sections. The Service
Information annex is designed to be extensible via the following mechanisms:
1) Reserved Fields: Fields in this Service Information annex marked reserved are reserved for
use either when revising this annex, or when another Recommendation is issued that builds
upon this one. See clause B.5.4.
2) Standard Table Types: As indicated in Table B.2, table_ID values in the range 0xCE through
0xFE are reserved for use either when revising this Service Information annex, or when
another Recommendation is issued that builds upon this one.2
3) User Private Table Types: As indicated in Table B.2, table_ID values in the range 0x80 through
0xBF are reserved for "user private" use. The format of user private tables carried in the
Network PID shall conform to the syntax described in Table B.3.
4) User Private Descriptors: Privately defined descriptors may be placed at designated locations
throughout the table sections described in this Service Information annex. Ownership of one
or more user private descriptors is indicated by the presence of an MPEG registration_descriptor()
preceding the descriptor(s).
2 NOTE Assignment of table_ID values in the 0xCE to 0xFE range requires coordination between ATSC
and SCTE.
table_ID: The table_ID of the Network Information Table section shall be 0xC2.
first_index:
An 8-bit unsigned integer number in the range 1 to 255 that indicates the index of the first
record to be defined in this table section. If more than one record is provided, the additional records
define successive table entries following first_index. The value zero is illegal and shall not be specified.
3 Note that transmission systems using VSB modulation transmit spectra are not symmetrical about the carrier
or pilot tone. Acquisition of a VSB-modulated signal involves computation of the pilot tone (or in analogue
VSB, the picture carrier) location relative to the centre of the band. For example, for the ATSC Digital
Television Standard (ASTC A/53), where the channel bandwidth is 6 MHz, the pilot tone is located 310 kHz
above the lower edge of the channel, or 2.690 MHz below the specified centre of the band. Similarly, for
analogue NTSC, the picture carrier is 1.25 MHz above the lower edge of the channel, or 1.75 MHz below
the specified centre of the band.
number_of_carriers:
An unsigned integer in the range 1 to 255 that represents the number of carriers
whose frequency is being defined by this CDS_record().
spacing_unit:A 1-bit field identifying the units for the frequency_spacing field. Table B.7 defines the
coding for spacing_unit.
transmission_system: A 4-bit field that identifies the transmission standard employed for the waveform
defined by this MMS record. Table B.10 defines the coding for transmission_system.
inner_coding_mode: A 4-bit field that indicates the coding mode for the inner code associated with the
waveform described in this MMS record. The following values are currently defined: 5/11, 1/2, 3/5,
2/3, 3/4, 4/5, 5/6, and 7/8. Coding of the inner_coding_mode field is shown in Table B.11.
A Host shall discard a Network Text Table section with table_subtype indicating an unknown or
unsupported value.
The SNS can provide a textual name associated with each service defined in the Short-form Virtual
Channel Table, by reference to its source_ID. The format of the source_name_subtable() is given in
Table B.15.
table_ID: The table_ID of the Short-form Virtual Channel Table shall be 0xC4.
transmission_medium: This 4-bit field shall be set to zero (0x0).
table_subtype:A 4-bit field that indicates the map type being delivered in this S-VCT section. Three
map types are currently defined: the Virtual Channel Map (VCM), the Defined Channels Map (DCM),
and the Inverse Channel Map (ICM). Table B.17 defines table_subtype.
An S-VCT section received with table_subtype indicating an unknown or unsupported map type shall
be discarded.
VCT_ID: A 16-bit unsigned integer value, in the range 0x0000 to 0xFFFF, indicating the VCT to which
the channel definitions in this table section apply. This 16-bit field may be used by the POD module
for filtering purposes. The Host is expected to ignore VCT_ID. Only one version of the S-VCT,
corresponding to one value of VCT_ID, shall be delivered to the Host across the Extended Channel
interface at a given time.
B.6.3.1 Defined Channels Map
Table B.18 shows the format of the DCM_structure().
descriptors_included: A Boolean flag that indicates, when set, that one or more record-level descriptors
are present in the table section. Record-level descriptors are those defined in Table B.20 following
the "if (descriptors_included)" statement. When the flag is clear, the record-level descriptor block is
absent. The descriptors_included flag is not applicable to the section level descriptors shown at the
bottom of Table B.16.
The activation time indicates the time at which the data delivered in the table section will be valid.
splice:A Boolean flag that indicates, when set, that the Host should arm video processing hardware
to execute the application of the data delivered in the VCM_structure() at the next MPEG-2 video splice
point if the virtual channel changes described in the table section apply to a currently acquired
channel, and the activation_time is reached. If the activation is immediate or specified as a time that has
Support for application-type virtual channels is optional. Hosts not supporting application-type virtual
channels may disregard all data associated with them. Support for application-type virtual channels
is beyond the scope of this annex.
source_ID: A 16-bit unsigned integer number, in the range 0x0000 to 0xFFFF, that identifies the
programming source associated with the virtual channel, on a system-wide basis. In this context, a
source is one specific source of video, text, data, or audio programming. For the purposes of
referencing virtual channels to the program guide database, each such program source is associated
with a unique value of source_ID. The source_ID itself may appear in an EPG database, where it tags
entries to specific services. The value zero for source_ID, if used, shall indicate the channel is not
associated with a source ID.
program_number: A 16-bit unsigned integer number that associates the virtual channel number being
defined with services defined in the Program Association and TS Program Map Table sections.
Access to elementary streams defined in each virtual channel record involves first acquiring the
Transport Stream on the carrier associated with the virtual channel, then referencing the Program
Association section in PID 0 to find the PID associated with the TS Program Map Table section for
this program_number. PIDs for each elementary stream are then found by acquisition of the TS Program
Map Table section.
A program_number with value 0x0000 (invalid as a regular program number) is reserved to indicate that
the Host is expected to discard the corresponding virtual channel record from the queue of pending
virtual channel changes. Records are identified in the pending queue by their activation_time, VCT_ID,
and virtual_channel_number. If no pending virtual channel change is found in the Host's queue, no action
should be taken for this virtual channel (i.e., the record is expected to be discarded).
For inactive channels (those not currently present in the Transport Stream), program_number shall be
set to zero. This number shall not be interpreted as pointing to a Program Map Table entry.
descriptors_count: An 8-bit unsigned integer value, in the range 0 to 255, that defines the number of
descriptors to follow.
CDS_reference: An unsigned 8-bit integer number, in the range 0 to 255, that identifies the frequency
associated with this virtual channel. Values 1 to 255 of CDS_reference are used as indices into the
Carrier Definition Subtable to find a frequency to tune to acquire the virtual channel. The value zero
is reserved to indicate that the referenced service is carried on all digital multiplexes in this VCM.
The CDS_reference field shall be disregarded for inactive channels.
MMS_reference:An 8-bit unsigned integer value, in the range 0 to 255, that references an entry in the
Modulation Mode Subtable (MMS). The value zero is illegal and shall not be specified. For digital
waveforms, the MMS_reference associates the carrier with a digital modulation mode. For Host
implementations that support only one set of modulation parameters, in systems in which one
modulation method is used for all carriers, storage and processing of the MMS_reference is unnecessary.
The MMS_reference field shall be disregarded for inactive channels.
video_standard: A 4-bit field that indicates the video standard associated with this non-Standard virtual
channel. Table B.24 defines video_standard.
descriptor():
The table section may include, at its end, one or more structures of the form tag, length,
data. The number of descriptors present is determined indirectly by processing the section_length field.
Descriptors are defined in clause B.7.
B.6.3.3 Inverse Channel Map
The Inverse Channel Map, once reconstructed in the Host from a sequence of Virtual Channel records
that belong to the ICM, consists of a list of source_ID/virtual_channel_number pairs, ordered by source_ID.
The Host may use this table to quickly find the virtual channel carrying the program given by a
particular value of source_ID (by binary search), if such a virtual channel exists. One Inverse Channel
Map can be defined per Virtual Channel Map. The ICM may be constructed from the VCM, or linear
searches may be done to resolve source_ID references. Transmission of the ICM is therefore optional.
Virtual channels that provide access points for applications (i.e., with the application_virtual_channel flag
set to "yes") are not included in the ICM.
Table B.25 describes the format of the ICM_structure().
A 12-bit unsigned integer, in the range 0 to 4095, that represents the index into the
first_map_index:
Inverse Channel Map where data carried in this ICM_structure() should be stored.
record_count: A 7-bit unsigned integer value, in the range 1 to 127, that represents the total number of
source_ID/virtual_channel pairs defined in this table section.
source_ID: A 16-bit unsigned integer number, in the range 0x0000 to 0xFFFF, that identifies the source
associated with the virtual channel, on a system-wide basis. In this context, a "source" is one specific
source of video, text, data, or audio programming. For the purposes of referencing virtual channels to
the program guide database, each such source is associated with a unique value of source_ID.
virtual_channel_number: A 12-bit unsigned integer value, in the range 0 to 4095, that represents the
virtual channel, in the Short-form Virtual Channel Table section (see Table B.16) given by VCT_ID,
table_ID: The table_ID of the Master Guide Table section shall be 0xC7.
section_syntax_indicator: This 1-bit field shall be set to '1'. It denotes that the section follows the generic
section syntax beyond the section length field.
private_indicator: This 1-bit field shall be set to '1'.
section_length:12-bit field specifying the number of remaining bytes in this section immediately
following the section_length field up to the end of the section. The value of the section_length shall be no
larger than 4093.
map_ID: This 16-bit field may be used by the POD module for filtering purposes. The Host is expected
to ignore map_ID. Only one version of the MGT, corresponding to one value of map_ID shall be
table_type_PID: This 13-bit field specifies the PID for the table_type described in the loop.
table_type_version_number: This 5-bit field reflects the version number of the table_type described in
the loop. The value of this field shall be the same as the version_number entered in the
corresponding fields of tables and table instances. The version number for the next L-VCT
(current_next_indicator = 0) shall be one unit more (modulo 32) than the version number for the current
L-VCT (current_next_indicator = 1).
number_bytes: This 32-bit unsigned integer field indicates the total number of bytes used for the
table_type described in the loop. There may be more than one instance of the indicated table_type.
table_type_descriptors_length: Total length of the descriptors for the table_type described in the loop
(in bytes).
descriptors_length: Total length of the MGT descriptor list that follows (in bytes).
descriptor():
The table section may include, at its end, one or more structures of the form tag, length,
data. Descriptors are defined in clause B.7.
CRC_32: This is a 32-bit field that contains the CRC value to ensure a zero output from the registers
in the decoder defined in Annex A of ITU-T H.222.0 | ISO/IEC 13818-1 "MPEG-2 Systems" after
processing the entire Master Guide Table section.
B.6.5.1 Restrictions on PID values
Certain restrictions apply to the PID values specified in the MGT. These restrictions are necessary to
ensure the Host can collect EPG data using a minimum number of concurrent flows on the Extended
Channel.
– All AEIT and AETT table sections with common MGT_tag values shall share a common PID.
– AEIT-0, AETT-0, AEIT-1 and AETT-1 instances shall share a common PID value.4
– AEIT-2, AETT-2, AEIT-3 and AETT-3 instances shall be associated with a second separate
PID value.
4 Please refer to clause B.6.8 for definition of the AEIT-n and AETT-n notation convention used in this annex.
table_id:An 8-bit unsigned integer number that indicates the type of table section being defined here.
For the longform_virtual_channel_table_section, the table_ID shall be 0xC9.
section_syntax_indicator: The section_syntax_indicator is a one-bit field which shall be set to '1' for the
longform_virtual_channel_table_section().
modulation_mode: An 8-bit unsigned integer number that indicates the modulation mode for the
transmitted carrier associated with this virtual channel. Values of modulation_mode are defined by this
annex in Table B.31. For digital signals, the standard values for modulation mode (values below
0x80) indicate transport framing structure, channel coding, interleaving, channel modulation, forward
error correction, symbol rate, and other transmission-related parameters, by means of a reference to
an appropriate standard. Values of modulation_mode 0x80 and above are outside the scope of SCTE.
5 A method to include such a unique 16-bit "Transmission Signal ID" in the NTSC VBI is specified in the
EIA-752 specification.
An inactive channel is defined as a channel that has program guide data available, but the channel is
not currently on the air. Inactive channels are represented as hidden channels with the hide_guide bit
set to 0. The Transport Stream shall not carry a Program Map Table representing an inactive channel.
A 6-bit enumerated type field that identifies the type of service carried in this virtual
service_type:
channel, based on Table B.33.
Each RRT instance, identified by rating_region (the eight least significant bits of table_id_extension),
conveys the rating system information for one specific region. The size of each RRT instance shall
not be more than 1024 bytes (including section header and trailer), and it shall be carried by only one
MPEG-2 private section.
Table B.34 describes the Rating Region Table.
table_ID: The table_ID of the Rating Region Table (RRT) shall be 0xCA.
section_syntax_indicator: This 1-bit field shall be set to '1'. It denotes that the section follows the generic
section syntax beyond the section length field.
private_indicator: This 1-bit field shall be set to '1'.
section_length:12-bit field specifying the number of remaining bytes in this section immediately
following the section_length field up to the end of the section. The value of the section_length shall be no
larger than 1021.
version_number: This 5-bit field is the version number of the Rating Region Table identified by
combination of the fields table_ID and table_ID_extension. The version number shall be incremented by
1 modulo 32 when any field in this instance of the Rating Region Table changes. The value of this
field shall be the same as that of the corresponding entry in MGT.
current_next_indicator: This 1-bit indicator is always set to '1'.
section_number: The value of this 8-bit field shall always be 0x00.
last_section_number: The value of this 8-bit field shall always be 0x00.
protocol_version: The value of this 8-bit field shall always be 0x00.
rating_region_name_length: An 8-bit unsigned integer number that defines the total length (in bytes) of
the rating_region_name_text() field to follow.
rating_region_name_text(): A data structure containing a Multiple String Structure which represents the
rating region name, e.g., "U.S. (50 states + possessions)", associated with the value given by rating_region.
The rating_region_name_text() shall be formatted according to the Multiple String Structure
(see clause B.8.2). The display string for the rating region name shall be limited to 32 characters or less.
dimensions_defined: This 8-bit field (1-255) specifies the number of dimensions defined in this
rating_region_table_section().
dimension_name_length: An 8-bit unsigned integer number that defines the total length in bytes of the
dimension_name_text() field to follow.
dimension_name_text(): A data structure containing a Multiple String Structure which represents the
dimension name being described in the loop. One dimension in the U.S. rating region, for example,
is used to describe the MPAA list. The dimension name for such a case may be defined as "MPAA".
The dimension_name_text() shall be formatted according to the Multiple String Structure
(see clause B.8.2). The dimension name display string shall be limited to 20 characters or less.
graduated_scale:
This 1-bit flag indicates whether or not the rating values in this dimension represent
a graduated scale, i.e., higher rating values represent increasing levels of rated content within the
dimension. Value 1 means yes, while value 0 means no.
values_defined: This 4-bit field (1-15) specifies the number of values defined for this particular
dimension.
abbrev_rating_value_length: An 8-bit unsigned integer number that defines the total length (in bytes) of
the abbrev_rating_value_text() field to follow.
abbrev_rating_value_text(): A data structure containing a Multiple String Structure which represents the
abbreviated name for one particular rating value. The abbreviated name for rating value 0 shall be set
to a null string, i.e., "". The abbrev_rating_value_text() shall be formatted according to the Multiple String
Structure (see clause B.8.2). The abbreviated value display string shall be limited to 8 characters or less.
rating_value_text(): A data structure containing a Multiple String Structure which represents the full
name for one particular rating value. The full name for rating value 0 shall be set to a null string,
i.e., "". The rating_value_text() shall be formatted according to the Multiple String Structure (see clause
B.8.2). The rating value display string shall be limited to 150 characters or less.
descriptors_length: Length (in bytes) of all of the descriptors that follow this field.
CRC_32: This is a 32-bit field that contains the CRC value that ensures a zero output from the registers
in the decoder defined in Annex A of ITU-T H.222.0 | ISO/IEC 13818-1 "MPEG-2 Systems" after
processing the entire Rating Region Table section.
B.6.8 Aggregate Event Information Tables (AEIT)
The Aggregate Event Information Table delivers event title and schedule information that may be
used to support an Electronic Program Guide application. The transmission format allows instances
of table sections for different time periods to be associated with common PID values. For use on the
Extended Channel (out-of-band), reduction of the total number of PID values in use for SI data is
important, because the POD module can typically support only a small number of concurrent data
flows (each associated with one PID value).
Each AEIT instance describes event data for one three-hour time period. The start time for any AEIT
is constrained to be one of the following eight UTC times: 00:00 (midnight), 03:00, 06:00, 09:00,
12:00 (noon), 15:00, 18:00, and 21:00.
The notation AEIT-n refers to the AEIT corresponding to timeslot n. Value 0 for n indicates the
current timeslot, value 1 the next timeslot, etc. The same notational methods apply to AETT.
Except for AEIT-0, each AEIT instance shall include event data only for those events actually starting
within the covered time period.6 AEIT-0 shall also include event data for all events starting in a prior
timeslot but continuing into the current timeslot. In addition, if the VCT entry for a particular source
ID includes a time_shifted_service_descriptor(), AEIT-0 shall describe event data for active events on any
channels referenced through the time_shifted_service_descriptor().
ETMs for events described in AEIT-0 shall be provided in AETT-0 on the PID associated with
AEIT-0 until they are no longer referenced by AEIT-0.
Table B.36 defines the syntax of the Aggregate Event Information Table.
6 Although AEIT is similar in structure to the EIT in ATSC A/65, its properties differ from EIT in this regard.
table_ID: The table_ID of the Aggregate Event Information Table shall be 0xD6.
section_syntax_indicator: This 1-bit field shall be set to '1'. It denotes that the section follows the generic
section syntax beyond the section length field.
private_indicator: This 1-bit field shall be set to '1'.
section_length: 12-bit field specifying the number of remaining bytes in this section immediately
following the section_length field up to the end of the section, including the CRC_32 field. The value of
this field shall not exceed 4093.
AEIT_subtype: This 8-bit field identifies the subtype of the AEIT. In the current protocol, only table
subtype value 0x00 is defined. Host devices shall discard instances of the
aggregate_event_information_table_section() in which an unknown AEIT_subtype is specified (currently, any
value other than zero).
MGT_tag: An 8-bit field that ties this AEIT instance to the corresponding table_type in the MGT and to
an AETT instance with the same value. The MGT_tag value for an AEIT instance for a given timeslot
shall be one higher (modulo 256) than the instance for the preceding time period.
version_number: This 5-bit field is the version number of the AEIT instance. An instance is identified by
the MGT_tag. The version number shall be incremented by 1 modulo 32 when any field in the AEIT
instance changes. The value of this field shall be identical to that of the corresponding entry in the MGT.
table_ID: The table_ID of the Aggregate Extended Text Table shall be 0xD7.
section_syntax_indicator: This 1-bit field shall be set to '1'. It denotes that the section follows the generic
section syntax beyond the section length field.
private_indicator: This 1-bit field shall be set to '1'.
section_length:12-bit field specifying the number of remaining bytes in the section immediately
following the section_length field up to the end of the section. The value of the section_length shall be no
larger than 4093.
AETT_subtype: This 8-bit field identifies the subtype of the AETT. In the current protocol, only table
subtype value 0x00 is defined. Host devices shall discard instances of the
aggregate_extended_text_table_section() in which an unknown AETT_subtype is specified (currently, any
value other than zero).
B.7 Descriptors
This clause defines descriptors applicable for use with various table sections defined in this annex.
B.7.1 Descriptor usage
Table B.40 lists all descriptors, their tag numbers and associated table sections applicable to out-of-band
SI transport. Asterisks mark the tables where the descriptors may appear. The range of descriptor tags
defined or reserved by MPEG-2 includes those with tag values 0x3F or below, plus 0xFF.
descriptor_tag: An 8-bit field that identifies the type of descriptor. For the caption_service_descriptor() the
value is 0x86.
descriptor_length: An 8-bit count of the number of bytes following the descriptor_length itself.
number_of_services: An unsigned 5-bit integer in the range 1 to 16 that indicates the number of closed
caption services present in the associated video service. Note that if the video service does not carry
television closed captioning, the caption_service_descriptor() shall not be present either in the Program
Map Table or in the Aggregate Event Information Table.
Each iteration of the "for" loop defines one closed caption service present as a sub-stream within
the 9600 bit/s closed captioning stream. Each iteration provides the sub-stream's language, attributes,
and (for advanced captions) the associated Service Number reference. Refer to EIA-708 Specification
for Advanced Television Closed Captioning (ATVCC), for a description of the use of the Service
Number field within the syntax of the closed caption stream.
language: A 3-byte language code per ISO 639-2/B defining the language associated with one closed
caption service. The ISO_639_language_code field contains a three-character code as specified by
ISO 639-2/B. Each character is coded into 8 bits according to ISO 8859-1 (ISO Latin-1) and inserted
in order into the 24-bit field.
cc_type: A flag that indicates, when set, that an advanced television closed caption service is present
in accordance with EIA-708 Specification for Advanced Television Closed Captioning (ATVCC).
When the flag is clear, a line-21 closed caption service is present. For line 21 closed captions, the
line21_field indicates whether the service is carried in the even or odd field.
A flag that indicates, when set, that the line 21 closed caption service is associated with
line21_field:
the field 2 of the NTSC waveform. When the flag is clear, the line-21 closed caption service is
associated with field 1 of the NTSC waveform. The line21_field flag is defined only if the cc_type flag
indicates line-21 closed caption service.
caption_service_number: A 6-bit unsigned integer value in the range zero to 63 that identifies the Service
Number within the closed captioning stream that is associated with the language and attributes defined
descriptor_tag: This 8-bit unsigned integer shall have the value 0x87, identifying this descriptor as
content_advisory_descriptor.
descriptor_length: This 8-bit unsigned integer specifies the length (in bytes) immediately following this
field up to the end of this descriptor.
rating_region_count: A 6-bit unsigned integer value in the range 1 to 8 that indicates the number of
rating region specifications to follow.
rating_description_length: An 8-bit unsigned integer value in the range 0 to 80 that represents the length
of the rating_description_text() field to follow.
rating_description_text():The rating description in the format of a Multiple String Structure
(see clause B.8.2). The rating_description display string shall be limited to 16 characters or less. The
rating description text shall represent the program's rating in an abbreviated form suitable for
on-screen display. The rating description text collects multidimensional text information into a single
small text string. If "xxx" and "yyy" are abbreviated forms for rating values in two dimensions, then
"xxx-yyy" and "xxx (yyy)" are examples of possible strings represented in rating_description_text().
The program source provider shall be the responsible party for insertion of correct
content_advisory_descriptors in the Program Map Table (PMT). Also, the content_advisory_descriptors may
be included in Aggregate Event Information Tables. If content_ advisory_descriptors are available both in
AEIT and PMT, the PMT should be used first, then the AEITs.
B.7.6 Revision detection descriptor
The revision_detection_descriptor() is used to indicate whether new information is contained in the table
section in which it appears.
Table B.43 describes the revision_detection_descriptor. This descriptor should be the first descriptor in the
list to limit processing overhead.
descriptor_tag: This 8-bit unsigned integer shall have the value 0xA0, identifying this descriptor as
extended_channel_name_descriptor().
descriptor_length: This 8-bit unsigned integer specifies the length (in bytes) immediately following this
field up to the end of this descriptor.
long_channel_name_text(): The long channel name in the format of a Multiple String Structure
(see clause B.8.2).
B.7.10 Time-shifted service descriptor
This descriptor links one virtual channel with one or more virtual channels that carry the same
programming on a time-shifted basis. The typical application is for Near Video On Demand (NVOD)
services.
NOTE – For the L-VCT, the 10-bit major/minor number fields can be coded to represent a one-part channel
number. The one-part representation is not applicable for the major/minor number fields in the
time_shifted_services_descriptor() because this descriptor is not applicable to S-VCT (see Table F.2 ). The
major/minor number fields in the time_shifted_services_descriptor() are only used to match against fields in
the LVCT.
The bit stream syntax for the time_shifted_service_descriptor() is shown in Table B.47.
descriptor_tag: This 8-bit unsigned integer shall have the value 0xA2, identifying this descriptor as
time_shifted_service_descriptor().
descriptor_tag 8 1 0xA3
descriptor_length 8 1 uimsbf
component_name_string() var
}
descriptor_tag:
This 8-bit unsigned integer shall have the value 0xA3, identifying this descriptor as
component_name_descriptor.
descriptor_length: This 8-bit unsigned integer specifies the length (in bytes) immediately following
this field up to the end of this descriptor.
component_name_string(): The name string in the format of a Multiple String Structure
(see clause B.8.2).
B.7.12 Daylight savings time descriptor
This descriptor is defined for optional carriage in the System Timetable section (and in no other type
of table). Hosts may use the data in the descriptor if present. If not present, no indication is being
provided as to whether daylight savings time is in effect or not. In other words, the Host shall not
infer that the lack of a descriptor means that daylight savings time is not currently in effect.
A description of the use of the daylight_savings_time_descriptor() is provided in Appendix B.III. The syntax
is shown in Table B.49.
descriptor_tag: This 8-bit unsigned integer shall have the value 0x96, identifying this descriptor as
daylight_savings_time_descriptor.
descriptor_length: This 8-bit unsigned integer specifies the length (in bytes) immediately following
this field up to the end of this descriptor.
DS_status: This bit indicates the status of daylight savings.
DS_status = '0': Not in daylight savings time.
DS_status = '1': In daylight savings time.
DS_day_of_month: This 5-bit unsigned integer field indicates the local day of the month on which the
transition into or out of daylight savings time is to occur (1-31).
DS_hour: This 8-bit unsigned integer field indicates the local hour at which the transition into or out
of daylight savings time is to occur (0-18). This usually occurs at 2 a.m. in the United States.
B.7.13 User private descriptors
Privately defined descriptors are those with descriptor_tag in the range 0xC0 through 0xFF. They may
be placed at any location where descriptors may be included within the table sections described in
this Service Information annex. Ownership of one or more user private descriptors is indicated by the
presence of an MPEG registration_descriptor() preceding the descriptor(s).
A string_length field always precedes one or more instances of mode, length, segment. This field is
described in each instance where multilingual text is used, and may be either 8- or 16-bits in length,
as appropriate. The value of string_length represents the sum total of all mode, length, segment blocks
comprising the multilingual text string to follow, and serves to indicate the end of the text string
structure.
The multilingual text data structure is designed to accommodate the need to represent a text string
composed of characters from a variety of alphabets, as well as ideographic characters. Whereas characters
could be represented using 16- or 32-bit character codes (as does Unicode ISO/IEC 10646-1), that form
is inefficient and wasteful of transmission bandwidth for strings composed primarily of alphabetic
rather than ideographic characters. To accommodate the need to handle Chinese, Japanese, and
Korean, modes are defined that allow 16-bit (double byte) character representations in standard
formats.
References below to ISO/IEC 10646-1 (Unicode) shall be to the Basic Multilingual Plane (BMP)
within that standard.
mode: An 8-bit value representing the text mode to be used to interpret characters in the segment to
follow. See Table B.52 for definition. Mode bytes in the range zero through 0x3E select Unicode
character code pages. Mode byte value 0x3F selects 16-bit Unicode character coding. Mode bytes in
the range 0x40 through 0xFF represent selection of a format effector function such as underline ON
or new line. If mode is in the range 0x40 to 0x9F, then the length/segment portion is omitted. Format
effector codes in the range 0x40 through 0x9F involve no associated parametric data; hence the
omission of the length/segment portion. Format effector codes in the range 0xA0 through 0xFF include
one or more parameters specific to the particular format effector function.
length: An 8-bit unsigned integer number representing the number of bytes in the segment to follow
in this block.
segment: An array of bytes representing a character string formatted according to the mode byte.
B.8.1.1 Mode byte definition
The mode byte is used either to select an ISO/IEC 10646-1 code page from the BMP (exact mapping,
or in the case of page zero, an extended mapping as defined herein), or to indicate that the text segment
is coded in one of a number of standard double-byte formats. Table B.52 shows the encoding of the
mode byte. Values in the zero to 0x33 range select ISO/IEC 10646-1 code pages.
Value 0x3F selects double-byte forms used with non-alphabetic script systems, where the segment
consists of a sequence of 16-bit character codes according to the ISO/IEC 10646-1 standard. Byte
ordering is high-order byte first (Motorola 680xx style), also known as big-endian.
B.8.1.2 Format effectors
Mode bytes in the 0x40 to 0xFF range are defined as format effectors. Table B.54 defines the
encoding for currently defined single-byte values. Format effectors in the range 0x40 through 0x9F
are self-contained, and do not have a length or data field following them. Format effectors in the range
0xA0 through 0xFF include a multi-byte parameter field. No multi-byte format effectors are currently
defined.
Line justification
Values 0x80, 0x81, and 0x82 signify the end of a line of displayed text. Value 0x80 indicates that the
text is displayed left justified within an enclosing rectangular region (defined outside the scope of the
text string). Value 0x81 indicates that the text is displayed right justified. Value 0x82 indicates that
the text is centered on the line. The dimensions and location on the screen of the box into which text
is placed is defined outside the scope of the text string itself.
Italics, underline, bold attributes
These format effectors toggle italics, underline, and bold display attributes. The italics, underline,
and bold format effectors indicate the start or end of the associated formatting within a text string.
Formatting extends through new lines. For example, to display three lines of bold text, only one
instance of the bold ON format effector is required.
Processing of unknown or unsupported format effectors
Hosts must discard format effectors that are unknown, or known not to be supported within a specific
Host model. If a parameter value carries an undefined value, that format effector is expected to be
discarded.
B.8.1.3 Default attributes
Upon entry to a multilingual text string, all mode toggles (bold, underline, italics) shall be assumed
"OFF".
B.8.1.4 Mode Zero
ISO/IEC 10646-1 page zero (U+0000 through U+00FF) includes ASCII in the lower half (U+0000
through U+007F), and Latin characters from ISO 8859-1, Latin-1, in U+0090 through U+00FF. This
set of characters covers Danish, Dutch, Faroese, Finnish, French, German, Icelandic, Irish, Italian,
Norwegian, Portuguese, Spanish and Swedish. Many other languages can be written with this set of
letters, including Hawaiian, Indonesian/Malay, and Swahili.
Table B.55 shows encodings of page zero characters in the range 0x80 through 0x9F (these are
undefined within ISO/IEC 10646-1).
ISO_639_language_code: This 3-byte (24 bits) field, in conformance with ISO 639-2/B, specifies the
language used for the ith string.
number_segments: This 8-bit unsigned integer field identifies the number of segments in the following
data. A specific mode is assigned for each segment.
compression_type: This 8-bit field identifies the compression type for the jth segment. Allowed values
for this field are shown in Table B.57.
mode: An 8-bit value representing the text mode to be used to interpret characters in the segment to
follow. See Table B.58 for definition. Mode values in the range zero through 0x3E select 8-bit
Unicode character code pages. Mode value 0x3F selects 16-bit Unicode character coding. Mode
values 0x40 through 0xDF are reserved for future use by ATSC. Mode values 0xE0 through 0xFE
are user private. Mode value 0xFF indicates the text mode is not applicable. Hosts shall ignore string
bytes associated with unknown or unsupported mode values.
number_bytes: This 8-bit unsigned integer field identifies the number of bytes that follows.
compressed_string_byte[k]: The kth byte of the jth segment.
C.1 SI tables
The specifications for SI tables are fully aligned with those in Annex A both in table names and in
their function. See Table C.1.
Descriptors which are used in Japan but not specified in Annex A are detailed in the following clauses.
C.2.2 CA descriptor
The CA descriptor which is described in CAT and PMT identifies the type of conditional access and
also identifies the PID in TS packet that carries the information related to conditional access.
Conditional access is only available when this descriptor is used. See Table C.5.
FEC_outer: The FEC_outer is a 4-bit field specifying the outer Forward Error Correction (FEC)
scheme used according to Table C.10.
modulation: This is an 8-bit field. It specifies the modulation scheme used on a cable delivery system
according to Table C.11.
symbol_rate: The symbol_rate is a 28-bit field giving the 4-bit BCD values specifying 7 characters
of the symbol_rate in Msymbol/s where the decimal point occurs after the third character
(e.g., 027.4500).
FEC_inner: The FEC_inner is a 4-bit field specifying the inner FEC scheme used according to
Table C.12.
Text items can optionally include information to select a wide range of character tables as indicated
below.
For the European languages a set of five character tables are available. If no character selection
information is given in a text item, then a default character set is assumed.
D.1 Control codes
The codes in the range 0x80 to 0x9F are assigned to control functions as shown in Table D.1.
For two-byte character tables, the codes in the range 0xE080 to 0xE09F are assigned to control
functions as shown in Table D.2.
Table D.2 – DVB codes within private use area of [ISO/IEC 10646-1]
Control code Description
0xE080 to 0xE085 Reserved for future use
0xE086 Character emphasis on
0xE087 Character emphasis off
0xE088 to 0xE089 Reserved for future use
0xE08A CR/LF
0xE08B to 0xE09F Reserved for future use
First nibble
Second
nibble 0 1 2 3 4 5 6 7 8 9 A B C D E F
0 @ P à p NBSP 0
1
! 1 A Q a q
2 " 2 B R b r
3
# 3 c S c s
TM
4
$ 4 D T d t
5
% 5 E U e u
6
& 6 F V f v
7 7 G W g w
8 ( 8 H X h x
9
) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C < L
\ l |
D – = M ] m }
E . > N ^ n ~
F / ? o _ o SHY
T0906080-98/d03
NOTE 1 – The SPACE character is located in position 20h of the code table.
NOTE 2 – NBSP = No-Break Space.
NOTE 3 – SHY = Soft Hyphen.
NOTE 4 – Table reproduced from ISO/IEC 6937 (1994).
NOTE 5 – All characters in column C are non-spacing characters (diacritical marks).
SP 0 @ P à p NBSP
1 ! 1 A Q a q
2
" 2 B R b r
3
# 3 c S c s
4
$ 4 D T d t
5
% 5 E U e u
6
& 6 F V f v
7 7 G W g w
8 ( 8 H X h x
9
) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C < L
\ l |
D – = M ] m }
E . > N ^ n ~
F / ? o _ o
T0906090-98/d04
NOTE 1 – For the Ruthenian language, the characters in code positions Ah/5h (S) and Fh/5h (s) are replaced
by and , respectively.
NOTE 2 – Table reproduced from ISO/IEC 8859-5 (1988).
SP 0 @ P à p NBSP
1 ! 1 A Q a q
2
" 2 B R b r
3
# 3 c S c s
4
$ 4 D T d t
5
% 5 E U e u
6
& 6 F V f v
7 7 G W g w
8 ( 8 H X h x
9
) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C < L \ l |
D – = M ] m } SHY
E . > N ^ n ~
F / ? o _ o
T0906100-98/d05
SP 0 @ P à p NBSP
1
! 1 A Q a q
2
" 2 B R b r
3
# 3 c S c s
4
$ 4 D T d t
5
% 5 E U e u
6
& 6 F V f v
7 7 G W g w
8 ( 8 H X h x
9
) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C < L \ l |
D – = M ] m } SHY
E . > N ^ n ~
F / ? o _ o
T0906110-98/d06
SP 0 @ P à p NBSP
1 ! 1 A Q a q
2
" 2 B R b r
3
# 3 c S c s
4
$ 4 D T d t
5
% 5 E U e u
6
& 6 F V f v
7 7 G W g w
8 ( 8 H X h x
9
) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C < L \ l |
D – = M ] m } SHY
E . > N ^ n ~
F / ? o _ o
T0906120-98/d07
FIGURE A.A.5/J.94...[D07] = 3 CM
NOTE – Table reproduced from ISO 8859-8 (1988)
SP 0 @ P à p NBSP
1
! 1 A Q a q
2
" 2 B R b r
3
# 3 c S c s
4
$ 4 D T d t
5
% 5 E U e u
6
& 6 F V f v
7 7 G W g w
8 ( 8 H X h x
9
) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C < L
\ l |
D – = M ] m } SHY
E . > N ^ n ~
F / ? o _ o
T0906130-98/d08
FIGURE A.A.6/J.94...[D08] = 3 CM
NOTE – Table reproduced from ISO/IEC 8859-9.
The 32-bit CRC decoder operates at bit level and consists of 14 adders + and 32 delay elements z(i).
The input of the CRC decoder is added to the output of z(31), and the result is provided to the input
z(0) and to one of the inputs of each remaining adder.
The other input of each remaining adder is the output of z(i), while the output of each remaining adder
is connected to the input of z(I + 1), with i = 0, 1, 3, 4, 6, 7, 9, 10, 11, 15, 21, 22 and 25 (see Figure E.1).
This is the CRC calculated with the polynomial:
x32 x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1
At the input of the CRC decoder bytes are received.
Each byte is shifted into the CRC decoder one bit at a time, with the most significant bit (msb) first,
i.e., from byte 0x01 (the last byte of the startcode prefix), first the seven "0"s enter the CRC decoder,
followed by the one "1".
Before the CRC processing of the data of a section the output of each delay element z(i) is set to its
initial value "1". After this initialization, each byte of the section is provided to the input of the CRC
decoder, including the four CRC_32 bytes.
After shifting the last bit of the last CRC_32 byte into the decoder, i.e., into z(0) after the addition
with the output of z(31), the output of all delay elements z(i) is read. In case of no errors, each of the
outputs of z(i) has to be zero.
At the CRC encoder the CRC_32 field is encoded with such value that this is ensured.
Table G.1 – Maximum cycle time for the STT, MGT, S-VCT, L-VCT and RRT
Table Section STT MGT S-VCT L-VCT RRT
Cycle time 1 min 500 msec 2 min 2 min 1 min
Annex H describes the compression method adopted for the transmission of English-language text
strings in PSIP. The method distinguishes two types of text strings: titles and program descriptions.
For each of these types, Huffman tables are defined based on 1st-order conditional probabilities.
Clause H.2 defines standard Huffman encode and decode tables optimized for English-language text
such as that typically found in program titles. Clause H.3 defines Huffman encode and decode tables
optimized for English-language text such as that typically found in program descriptions. Hosts
supporting the English language are expected to support decoding of text using either of these two
standard Huffman compression tables.
The encode tables provide necessary and sufficient information to build the Huffman trees that need
to be implemented for decoding. The decode tables described in Tables H.5 and H.7 are a particular
mapping of those trees into a numerical array suitable for storage. This array can be easily
implemented and used with the decoding algorithm. However, the user is free to design its own
decoding tables as long as they follow the Huffman trees and rules defined in this annex.
Note that even though the ISO Latin-1 character set supports up to 256 characters, only the first
128 characters may be represented in compressed form.
H.1.2.1 Tree root byte offsets
byte_offset_of_character_i_tree_root: A 16-bit unsigned integer specifying the location, in bytes from the
beginning of the decode table, of the root for the ith character's order-1 tree.
H.1.2.2 Order-1 decode trees
Order-1 decode trees are binary trees. The roots of the decode trees are located at the table offsets
specified in the tree root offset list. The left and right children of a given node are specified as word
offsets from the root of the tree (a word is equivalent to two bytes).
Decode trees have the format as shown in Table H.3:
Prior Symbol: 0 Symbol: 27 Code: 11001011 Prior Symbol: 0 Symbol: 'U' Code: 0110101
Prior Symbol: 0 Symbol: '$' Code: 1100101011 Prior Symbol: 0 Symbol: 'V' Code: 1100111
Prior Symbol: 0 Symbol: '2' Code: 011010010 Prior Symbol: 0 Symbol: 'W' Code: 0010
Prior Symbol: 0 Symbol: '4' Code: 1100101010 Prior Symbol: 0 Symbol: 'Y' Code: 1100100
Prior Symbol: 0 Symbol: '7' Code: 011010011 Prior Symbol: 0 Symbol: 'Z' Code: 110010100
Prior Symbol: 0 Symbol: 'A' Code: 0111 Prior Symbol: 1 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'B' Code: 1001 Prior Symbol: 2 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'C' Code: 1011 Prior Symbol: 3 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'D' Code: 11011 Prior Symbol: 4 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'E' Code: 10001 Prior Symbol: 5 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'F' Code: 11000 Prior Symbol: 6 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'G' Code: 11100 Prior Symbol: 7 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'H' Code: 11111 Prior Symbol: 8 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'I' Code: 10000 Prior Symbol: 9 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'J' Code: 01100 Prior Symbol: 10 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'K' Code: 1100110 Prior Symbol: 11 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'L' Code: 11101 Prior Symbol: 12 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'M' Code: 1010 Prior Symbol: 13 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'N' Code: 0011 Prior Symbol: 14 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'O' Code: 011011 Prior Symbol: 15 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'P' Code: 11110 Prior Symbol: 16 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'Q' Code: 01101000 Prior Symbol: 17 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'R' Code: 11010 Prior Symbol: 18 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'S' Code: 000 Prior Symbol: 19 Symbol: 27 Code: 1
Prior Symbol: 0 Symbol: 'T' Code: 010 Prior Symbol: 20 Symbol: 27 Code: 1
41 96 84 1 127 80 170 3
42 1 85 234 128 2 171 222
0 1 43 98 86 1 129 82 172 3
1 0 44 1 87 240 130 2 173 230
2 1 45 100 88 1 131 84 174 3
3 58 46 1 89 242 132 2 175 244
4 1 47 102 90 1 133 126 176 4
5 60 48 1 91 244 134 2 177 4
6 1 49 104 92 2 135 146 178 4
7 62 50 1 93 6 136 2 179 6
8 1 51 106 94 2 137 172 180 4
9 64 52 1 95 18 138 2 181 12
10 1 53 108 96 2 139 186 182 4
11 66 54 1 97 20 140 2 183 16
12 1 55 110 98 2 141 210 184 4
13 68 56 1 99 28 142 2 185 18
14 1 57 112 100 2 143 228 186 4
15 70 58 1 101 40 144 2 187 20
16 1 59 114 102 2 145 250 188 4
17 72 60 1 103 48 146 3 189 22
18 1 61 116 104 2 147 6 190 4
19 74 62 1 105 52 148 3 191 24
20 1 63 118 106 2 149 30 192 4
21 76 64 1 107 54 150 3 193 26
22 1 65 120 108 2 151 38 194 4
23 78 66 1 109 56 152 3 195 28
24 1 67 206 110 2 153 50 196 4
25 80 68 1 111 58 154 3 197 82
26 1 69 210 112 2 155 62 198 4
27 82 70 1 113 60 156 3 199 106
28 1 71 212 114 2 157 82 200 4
29 84 72 1 115 62 158 3 201 142
30 1 73 214 116 2 159 100 202 4
31 86 74 1 117 70 160 3 203 174
32 1 75 216 118 2 161 122 204 4
33 88 76 1 119 72 162 3 205 238
34 1 77 218 120 2 163 148 206 5
35 90 78 1 121 74 164 3 207 6
36 1 79 220 122 2 165 152 208 5
37 92 80 1 123 76 166 3 209 40
38 1 81 230 124 2 167 164 210 5
39 94 82 1 125 78 168 3 211 68
40 1 83 232 126 2 169 200 212 5
0 1 42 1 84 1 126 2 168 3
1 0 43 84 85 252 127 94 169 74
2 1 44 1 86 1 128 2 170 3
3 44 45 86 87 254 129 96 171 90
4 1 46 1 88 2 130 2 172 3
5 46 47 88 89 0 131 98 173 94
6 1 48 1 90 2 132 2 174 3
7 48 49 90 91 4 133 118 175 100
8 1 50 1 92 2 134 2 176 3
9 50 51 92 93 22 135 132 177 110
10 1 52 1 94 2 136 2 178 3
11 52 53 94 95 32 137 148 179 112
12 1 54 1 96 2 138 2 180 3
13 54 55 96 97 34 139 162 181 114
14 1 56 1 98 2 140 2 182 3
15 56 57 98 99 44 141 178 183 116
16 1 58 1 100 2 142 2 184 3
17 58 59 100 101 50 143 186 185 118
18 1 60 1 102 2 144 2 186 3
19 60 61 102 103 56 145 200 187 120
20 1 62 1 104 2 146 2 188 3
21 62 63 104 105 60 147 210 189 122
22 1 64 1 106 2 148 2 190 3
23 64 65 106 107 64 149 222 191 124
24 1 66 1 108 2 150 2 192 3
25 66 67 222 109 68 151 234 193 126
26 1 68 1 110 2 152 2 194 3
27 68 69 224 111 70 153 242 195 128
28 1 70 1 112 2 154 2 196 3
29 70 71 234 113 74 155 252 197 180
30 1 72 1 114 2 156 3 198 3
31 72 73 236 115 76 157 8 199 206
32 1 74 1 116 2 158 3 200 3
33 74 75 238 117 84 159 16 201 240
34 1 76 1 118 2 160 3 202 4
35 76 77 240 119 86 161 26 203 26
36 1 78 1 120 2 162 3 204 4
37 78 79 242 121 88 163 40 205 88
38 1 80 1 122 2 164 3 206 4
39 80 81 248 123 90 165 42 207 110
40 1 82 1 124 2 166 3 208 4
41 82 83 250 125 92 167 52 209 142
The types of conversion which may be required are summarized in Figure I.1.
Figure I.1 – Conversion routes between Modified Julian Date (MJD) and
Universal Time Coordinated (UTC)
The conversion between MJD + UTC and the "local" MJD + local time is simply a matter of adding
or subtracting the local offset. This process may, of course, involve a "carry" or "borrow" from the
UTC affecting the MJD.
The other five conversion routes shown on the diagram are detailed in the formulae below:
Symbols used:
MJD Modified Julian Date
UTC Universal Time Coordinated
Y Year from 1900 (e.g., for 2003, Y = 103)
M Month from January (= 1) to December (= 12)
D Day of month from 1 to 31
WY "Week number" Year from 1900
WN Week number according to ISO 2015:1976
WD Day of week from Monday (= 1) to Sunday (= 7)
K, L, M, W, Y Intermediate variables
Multiplication
int Integer part, ignoring remainder
mod 7 Remainder (0-6) after dividing integer by 7
Both numbering schemes may co-exist in a channel map, but each individual channel must be
considered labelled with either a one-part or a two-part number.
Support of the splice timing function is optional in Hosts. A Host not supporting the splice timing
feature is expected to apply the data delivered in the VCM_structure() at the indicated activation time
(i.e., the splice flag may be simply disregarded).
The Short-form Virtual Channel Table section (table_ID 0xC4) or the Long-form Virtual Channel
Table (table_ID 0xC9) provide navigation data on the out-of-band path. If MGT is provided, it
references all tables present in Service Information (except the System Timetable).
The Master Guide Table provides general information about all of the other tables including the
S-VCT, L-VCT, RRT, AEIT, and AETT. It defines table sizes necessary for memory allocation
during decoding; it defines version numbers to identify those tables that need to be updated; and it
gives the packet identifier (PID) values associated with instances of AEITs and AETTs.
In Profile 3 and higher, the Rating Region Table must be included, with one exception, to describe
rating regions in use. The exception is that delivery of version 0 of the RRT for region 0x01 (US and
possessions), need not be sent because this table is standardized in EIA-766. Furthermore, for Profile
3, the MGT need not be sent if no RRT is sent.
Aggregate Event Information Tables are included in the out-of-band data in Profiles 4-6. Each AEIT
instance describes the events or TV programs associated with a particular three-hour time slot. In the
AEIT table structure, program schedule and title data for all virtual channels is aggregated together.
Each AEIT instance is valid for a time interval of three hours. As shown in Figure III.3, at minimum,
AEIT-0 through AEIT-3 must be sent. Therefore, when Profiles 4-6 are used, current program
information and information covering nine to twelve hours of future programming will be available
to the Host.
Up to 256 AEITs may be transmitted; over 30 days of future programming may therefore be
described. For the fourth timeslot and beyond (AEIT-4 through AEIT-N), the tables may be
associated with the same or different PID values.
The start time for any AEIT is constrained to be one of the following UTC times: 00:00 (midnight),
03:00, 06:00, 09:00, 12:00 (noon), 15:00, 18:00, and 21:00. Imposing constraints on the start times
as well as the interval duration simplifies re-multiplexing. During re-multiplexing, AEIT tables
7 Source ID and application ID need never be defined in the same virtual channel record, therefore they share
a common 16-bit field in the stored map. Channels are defined as for "application access" or not; if they are
application access, the field defines the application ID, if not, it defines the source ID.
The first entry of the MGT describes the version number and size of the Long-form Virtual Channel
Table. The second entry corresponds to an instance of the Rating Region Table for region 6. If some
region's policy makers decided to use more than one instance of an RRT, the MGT would list each
PID, version number, and size.
The next entries in the MGT correspond to the four AEITs that must be supplied in the Transport
Stream for profiles 4-6. After the AEITs, the MGT references four Aggregate Extended Text Tables.
The PID values for AEIT-0 and AEIT-1 are both 0x1DD2. MGT_tag values 56 and 57 are used for
these. For AEIT-2 AEIT-3, PID 0x1DD3 is used. The last four references are to Aggregate ETTs.
Note that AETT-n shares a common PID value with AEIT-n for every value of n. AEIT-0 and
AETT-0 are associated with PID 0x1DD2, as are AEIT-1 and AETT-1. AEIT-2 and AETT-2 are
associated with PID 0x1DD3, etc.
Descriptors can be added for each entry as well as for the entire MGT. By using descriptors, future
improvements can be incorporated without modifying the basic structure of the MGT. The MGT is
like a flag table that continuously informs the Host about the status of all the other tables (except the
System Time which has an independent function). The MGT is continuously monitored at the Host
to prepare and anticipate changes in the channel/event structure. When tables are changed at the
broadcast side and the PID association is unchanged, their version numbers are incremented and the
L-VCT
The L-VCT combines all the data pertinent to the description of a virtual channel into a single table.
Use of the L-VCT instead of the S-VCT eliminates the need to send CDS, MMS, SNS, DCM, or ICM.
The L-VCT follows the standard MPEG-2 long-form section syntax (section_syntax_indicator = 1).
Rating Region Table
The Rating Region Table is a fixed data structure in the sense that its content remains mostly
unchanged. It defines the rating standard that is applicable for each region and/or country. The
concept of table instance introduced in the previous clause is also used for the RRT. Several instances
of the RRT can be constructed and carried in the Transport Stream simultaneously. Each instance is
identified by a different table_id_extension value (which becomes the rating_region in the RRT syntax)
and corresponds to one and only one particular region. Each instance has a different version number
which is also carried in the MGT. This feature allows updating each instance separately.
Figure III.6 shows an example of one instance of an RRT, defined for rating region 99 and carrying
an example rating system. Each event listed in any of the EITs may carry a content advisory
descriptor. This descriptor is an index or pointer to one or more instances of the RRT.
In this SI appendix for out-of-band use, each instance of AEIT-k contains a list of events for each
virtual channel. Linkage to each channel in the VCT is made via the source_ID. For the AEIT, the
table_id_extension field appears as MGT_tag.
Figure III.7 shows, for example, a program provider's instance for AEIT-0.
AEIT-0 is unique in that it must list all events starting within the three-hour time period it covers, as
well as any events that started earlier but extend into the covered period. For all other AEITs, only
those events actually starting within the three hour time period are included. The Host is expected to
collect AEITs in order of their time coverage. If AEIT-4 is available to the Host but AEIT-3 is not,
for example, information for events that started in the time period covered by AEIT-3 but extending
into AEIT-4 will not be available for display.
Figure III.7 shows an example of a small AEIT-0, including event data for two sources, a channel
called "TSPN" (source_ID 22) and one called "MOOV" (source_ID 80). For the three-hour period
covered by AEIT-0, 9 a.m. to noon, three events are listed for TSPN and two for MOOV. The field
event_id is a number used to identify each event. The event_id is used to link events with associated text
delivered in the AETT. The assignment of an event_ID value must be unique within a source ID and a
3-hour interval defined by one AEIT instance. The event_id is followed by the start_time and then the
length_in_seconds. Notice that for AEIT-0 only, events can have start times before the activation time
of the table. ETMs are simply long textual descriptions. The collection of ETMs constitutes an
Aggregate Extended Text Table (ETT).
An example of an ETM for the Car Racing event may be:
"Live coverage from Indianapolis. This car race has become the largest single-day sporting event in
the world. Two hundred laps of full action and speed."
Several descriptors can be associated with each event. The most important is the content advisory
descriptor which assigns a rating value according to one or more systems. Recall that the actual rating
system definitions are tabulated within the RRT.
Figure III.9 diagrams the AETT data structure. The AETT aggregates text for a given timeslot into
one sectioned MPEG table.
An AETT-n instance for a given value of n (timeslot) is associated with the same PID value as
AEIT-n. This means that they can be collected using a single Extended Channel data flow between
Host and POD.
Inactive Channels
Any channels in the L-VCT which are not currently active shall have the hidden attribute set to 1 and
the hide_guide attribute set to 0. Inactive channels in the S-VCT shall have the hidden attribute in
channel_type, and the hide_guide flag in the channel_properties_descriptor() set to 0.
Table III.3 shows expected DTV behavior for the various combinations of the hidden and hide_guide
attributes. In the table the "x" entry indicates "don't care." A check in the "surf" column indicates the
channel is available by channel surfing and via direct channel number entry. A check in the "guide"
column indicates that the channel may appear in the program guide listing.
8 Prior to that time, all initial Receivers will surely be out of service, and new ones can be designed to handle
the wrap condition.
In order to convert GPS into local time, the Host needs to store a time offset (from GPS to local time)
in local memory and an indicator as to whether daylight savings is observed. These two quantities
can be obtained from the user interface (indicating time zone and daylight savings observance) or
from the conditional access system, if present, and stored in non-volatile Host memory.
Since there is a common time (GPS) transmitted in SI, a mechanism to indicate when the Host should
switch into (or out of) daylight savings time at the appropriate local time can be very useful. Once all
the Hosts have transitioned at their local times, the entire system can be shifted into daylight savings
time. This is accomplished by appropriate setting of the daylight_savings in the
daylight_savings_time_descriptor() the STT. The basic use of daylight savings fields through the year is
shown in Table IV.1.
Table IV.1 – Basic use of daylight savings fields through the year
DS DS_day
Conditions DS_hour
status of_month
At the beginning of the year (January) daylight savings is off. This 0 0 0
is the status of the fields until:
When the transition into daylight savings time is within less than one 0 day_in hour_in
month, the DS_day_of_month field takes the value day_in, and
the DS_hour field takes the value hour_in. The DS_status bit is 0
indicating it is not yet daylight savings time. (The transition is to
occur on the day_in day of the month at hour=hour_in; for
example, if the transition were on April 15 at 2 a.m., then day_in=15
and hour_in=2.)
After all time zone daylight transitions (within the span of the 1 0 0
network) have occurred, the DS_status bit takes the value 1,
indicating that daylight savings time is on. The DS_day_of_month
field and the DS_hour field take the value 0. (In the U.S., this
transition has to occur no later than 7 p.m. Pacific Time on the day
day_in.) This is the status of the fields until:
When the transition out of daylight savings time is within less than 1 day_out hour_out
one month, the DS_day_of_month field takes the value day_out,
and the DS_hour field takes the value hour_out. The DS_status
bit is 1 indicating it is still daylight savings time. (The transition is
to occur on the day_out day of the month at hour=hour_out; for
example, if the transition were on October 27 at 2 a.m., then
day_out=27 and hour_out=2.)
After all time zones (within the span of the network) have shifted 0 0 0
out of daylight savings time, the DS_status bit takes the value 0,
indicating that daylight savings time is off. The DS_day_of_month
field and the DS_hour field take the value 0. (In the U.S., this
transition has to occur no later than 7 p.m. Pacific Time on the day
day_out.) This finishes the cycle.
Series J Cable networks and transmission of television, sound programme and other
multimedia signals
Series K Protection against interference
Series L Environment and ICTs, climate change, e-waste, energy efficiency; construction, installation
and protection of cables and other elements of outside plant
Series M Telecommunication management, including TMN and network maintenance
Printed in Switzerland
Geneva, 2017