资源描述
MPEG2规范(英文版)
FOREWORD IX
INTRODUCTION - PART 1 SYSTEMS X
0.1 Transport Stream xii
0.2 Program Stream xiv
0.3 Conversion between Transport Stream and Program Stream xv
0.4 Packetized Elementary Stream xvi
0.5 Timing model xvi
0.6 Conditional access xvi
0.7 Multiplex-wide operations xvii
0.8 Individual stream operations xvii
0.8 1 De-multiplexing xvii
0.8 2 Synchronization xvii
0.8 3 Relation to compression layer xviii
0.9 System reference decoder xviii
0.10 Applications xviii
SECTION 1: GENERAL 1
1.1 Scope 1
1.2 References 1
1.3 Identical Recommendations |International Standards 2
1.4 Additional references 2
SECTION 2 TECHNICAL ELEMENTS 3
2.1 Definitions 3
2.2 Symbols and abbreviations 6
2.2.1Arithmetic operators 6
2.2.2 Logical operators 7
2.2.3 Relational operators 7
2.2.4 Bitwise operators 8
2.2.5 Assignment 8
2.2.6 Mnemonics 8
2.2.7 Constants 9
2.3 Method of describing bit stream syntax 9
2.4 Transport Stream bitstream requirements 10
2.4.1 Transport Stream coding structure and parameters 10
2.4.2 Transport Stream system target decoder 11
2.4.3 Specification of the Transport Stream syntax and semantics 21
1) 2.4.3.1 Transport Stream 21
2) 2.4.3.2 Transport Stream packet layer 22
3) 2.4.3.3 Semantic definitions of fields in Transport Stream packet layer 22
4) 2.4.3.4 Adaptation field 24
5) 2.4.3.5 Semantic definitions of fields in adaptation field 25
6) 2.4.3.6 PES packet 33
7) 2.4.3.7 Semantic definitions of fields in PES packet 36
8) 2.4.3.8 Carriage of Program Streams and ISO/IEC 11172-1 Systems streams in the Transport Stream 44
2.4.4 Program specific information 44
2.5 Program Stream bitstream requirements 53
2.5.1 Program Stream coding structure and parameters 53
2.5.2 Program Stream system target decoder 53
2.5.3 Specification of the Program Stream syntax and semantics 57
9) 2.5.3.1 Program Stream 57
10) 2.5.3.2 Semantic definition of fields in Program Stream 58
11) 2.5.3.3 Pack layer of Program Stream 58
12) 2.5.3.4 Semantic definition of fields in program stream pack 59
13) 2.5.3.5 System header 59
14) 2.5.3.6 Semantic definition of fields in system header 60
2.5.4 Program Stream map 62
2.5.5 Program Stream directory 64
2.6 Program and program element descriptors 67
2.6.1 Semantic definition of fields in program and program element descriptors 67
2.6.2 Video stream descriptor 68
2.6.3 Semantic definition of fields in video stream descriptor 69
2.6.4 Audio stream descriptor 70
2.6.5 Semantic definition of fields in audio stream descriptor 70
2.6.6 Hierarchy descriptor 70
2.6.7 Semantic definition of fields in hierarchy descriptor 71
2.6.8 Registration descriptor 71
2.6.9 Semantic definition of fields in registration descriptor 72
2.6.10 Data stream alignment descriptor 72
2.6.11 Semantic definition of fields in data stream alignment descriptor 72
2.6.12 Target background grid descriptor 73
2.6.13 Semantic definition of fields in target background grid descriptor 73
2.6.14 Video window descriptor 74
2.6.15 Semantic definition of fields in video window descriptor 74
2.6.16 Conditional access descriptor 74
2.6.17 Semantic definition of fields in conditional access descriptor 75
2.6.18 ISO 639 language descriptor 75
2.6.19 Semantic definition of fields in ISO 639 language descriptor 75
2.6.20 System clock descriptor 76
2.6.21 Semantic definition of fields in system clock descriptor 76
2.6.22 Multiplex buffer utilization descriptor 76
2.6.23 Semantic definition of fields in multiplex buffer utilization descriptor 77
2.6.24 Copyright descriptor 77
2.6.25 Semantic definition of fields in copyright descriptor 77
2.6.26 Maximum bitrate descriptor 78
2.6.27 Semantic definition of fields in maximum bitrate descriptor 78
2.6.28 Private data indicator descriptor 78
2.6.29 Semantic definition of fields in Private data indicator descriptor 78
2.6.30 Smoothing buffer 78
2.6.31 Semantic definition of fields in smoothing buffer descriptor 79
2.6.32 STD descriptor 79
2.6.33 Semantic definition of fields in STD descriptor 80
2.6.34 IBP_descriptor 80
2.6.35 Semantic definition of fields in IBP_descriptor 80
2.7 Restrictions on the multiplexed stream semantics 80
2.7.1 Frequency of coding the system clock reference 80
2.7.2 Frequency of coding the program clock reference 81
2.7.3 Frequency of coding the elementary stream system clock reference 81
2.7.4 Frequency of presentation_time_stamp coding 81
2.7.5 Conditional coding of time stamps 81
2.7.6 Timing constraints for scalable coding 82
2.7.7 Frequency of coding P-STD_buffer_size in PES packet headers 83
2.7.8 Coding of system header in the Program Stream 83
2.7.9 Constrained system parameter Program Stream 83
2.7.10 Transport Stream 84
2.8 Compatibility with ISO/IEC 11172 85
Annexes
A DIGITAL STORAGE MEDIUM COMMAND AND CONTROL [DSM CC] 86
B CRC DECODER MODEL 98
C PROGRAM SPECIFIC INFORMATION 100
D ITU-T REC. H.222.0 |ISO/IEC 13818-1 SYSTEMS TIMING MODEL AND APPLICATION IMPLICATIONS 109
E DATA TRANSMISSION APPLICATIONS 120
F GRAPHICS OF SYNTAX FOR ITU-T REC. H.222.0 | ISO/IEC 13818-1 121
G GENERAL INFORMATION 127
H PRIVATE DATA 128
I LIST OF COMPANIES HAVING PROVIDED PATENT STATEMENTS FOR ITU-T REC H.222.0 | ISO/IEC 13818 130
J SYSTEMS CONFORMANCE AND REAL-TIME INTERFACE 132
K INTERFACING JITTER-INDUCING NETWORKS TO MPEG-2 DECODERS 133
L SPLICING TRANSPORT STREAMS 137
List of Figures
0-1 -- SIMPLIFIED OVERVIEW OF ITU-T REC. H.222.0 | ISO/IEC 13818-1 SCOPE XI
0-2 -- PROTOTYPICAL TRANSPORT DEMULTIPLEXING AND DECODING EXAMPLE XIII
0-3 -- PROTOTYPICAL TRANSPORT MULTIPLEXING EXAMPLE XIII
0-4 -- PROTOTYPICAL TRANSPORT STREAM TO PROGRAM STREAM CONVERSION XIV
0-5 -- PROTOTYPICAL DECODER FOR PROGRAM STREAMS XV
2-6 -- TRANSPORT STREAM SYSTEM TARGET DECODER NOTATION 12
2-7 -- PROGRAM STREAM SYSTEM TARGET DECODER NOTATION 54
2-8 -- TARGET BACKGROUND GRID DESCRIPTOR DISPLAY AREA 73
A-1 -- CONFIGURATION OF DSM CC APPLICATION 88
A-2 -- DSM CC BITSTREAM DECODED AS A STANDALONE BITSTREAM 89
A-3 -- DSM CC BITSTREAM DECODED AS PART OF THE SYSTEM BITSTREAM 89
B-1 -- 32 BIT CRC DECODER MODEL 98
C-1 -- PROGRAM AND NETWORK MAPPING RELATIONSHIPS 104
D-1 -- CONSTANT DELAY MODEL 109
D-2 -- STC RECOVERY USING PLL 113
F-1 -- TRANSPORT STREAM SYNTAX DIAGRAM 121
F-2 -- PES PACKET SYNTAX DIAGRAM 122
F-3 -- PROGRAM ASSOCIATION SECTION DIAGRAM 122
F-4 -- CONDITIONAL ACCESS SECTION DIAGRAM 123
F-5 -- TS PROGRAM MAP SECTION DIAGRAM 123
F-6 -- PRIVATE SECTION DIAGRAM 124
F-7 -- PROGRAM STREAM DIAGRAM 125
F-8 -- PROGRAM STREAM MAP DIAGRAM 125
K-1 -- SENDING SYSTEM STREAMS OVER A JITTER-INDUCING NETWORK 134
K-2 -- JITTER SMOOTHING USING NETWORK-LAYER TIMESTAMPS 135
K-3 -- INTEGRATED DEJITTERING AND MPEG-2 DECODING 136
List of Syntax Tables
2-1 -- NEXT START CODE 10
2-2 -- TRANSPORT STREAM 21
2-3 -- ITU-T REC. H.222.0 | ISO/IEC 13818 TRANSPORT PACKET 22
2-4 -- PID TABLE 23
2-5 -- SCRAMBLING CONTROL VALUES 23
2-6 -- ADAPTATION FIELD CONTROL VALUES 23
2-7 -- TRANSPORT STREAM ADAPTATION FIELD 24
2-8 -- SPLICE PARAMETERS TABLE 1 30
2-9 -- SPLICE PARAMETERS TABLE 2 31
2-10 -- SPLICE PARAMETERS TABLE 3 31
2-11 -- SPLICE PARAMETERS TABLE 4 31
2-12 -- SPLICE PARAMETERS TABLE 5 31
2-13 -- SPLICE PARAMETERS TABLE 6 32
2-14 -- SPLICE PARAMETERS TABLE 7 32
2-15 -- SPLICE PARAMETERS TABLE 8 32
2-16 -- SPLICE PARAMETERS TABLE 9 32
2-17 -- SPLICE PARAMETERS TABLE 10 32
2-18 -- PES PACKET 33
2-19 -- STREAM_ID ASSIGNMENTS 36
2-20 -- PES SCRAMBLING CONTROL VALUES 37
2-21 -- TRICK MODE CONTROL VALUES 40
2-22 -- FIELD_ID FIELD CONTROL VALUES 41
2-23 -- COEFFICIENT SELECTION VALUES 42
2-24 -- PROGRAM SPECIFIC INFORMATION 45
2-25 -- PROGRAM SPECIFIC INFORMATION POINTER 46
2-26 -- PROGRAM ASSOCIATION SECTION 47
2-27 -- TABLE_ID ASSIGNMENT VALUES 47
2-28 -- CONDITIONAL ACCESS SECTION 49
2-29 -- TRANSPORT STREAM PROGRAM MAP SECTION 50
2-30 -- PRIVATE SECTION 52
2-31 -- PROGRAM STREAM 58
2-32 -- PROGRAM STREAM PACK 58
2-33 -- PROGRAM STREAM PACK HEADER 58
2-34 -- PROGRAM STREAM SYSTEM HEADER 59
2-35 -- PROGRAM STREAM MAP 63
2-36 -- STREAM TYPE ASSIGNMENTS 64
2-37 -- PES PACKET SYNTAX FOR PROGRAM STREAM DIRECTORY 65
2-38 -- INTRA_CODED INDICATOR 67
2-39 -- CODING_PARAMETERS INDICATOR 67
2-40 -- PROGRAM AND PROGRAM ELEMENT DESCRIPTORS 68
2-41 -- VIDEO STREAM DESCRIPTOR 69
2-42 -- FRAME RATE CODE 69
2-43 -- AUDIO STREAM DESCRIPTOR 70
2-44 -- HIERARCHY DESCRIPTOR 71
2-45 -- HIERARCHY DESCRIPTOR VALUES 71
2-46 -- REGISTRATION DESCRIPTOR 72
2-47 -- DATA STREAM ALIGNMENT DESCRIPTOR 72
2-48 -- VIDEO STREAM ALIGNMENT VALUES 72
2-49 -- AUDIO STREAM ALIGNMENT VALUES 73
2-50 -- TARGET BACKGROUND GRID DESCRIPTOR 73
2-51 -- VIDEO WINDOW DESCRIPTOR 74
2-52 -- CONDITIONAL ACCESS DESCRIPTOR 75
2-53 -- ISO 639 LANGUAGE DESCRIPTOR 75
2-54 -- AUDIO TYPE VALUES 75
2-55 -- SYSTEM CLOCK DESCRIPTOR 76
2-56 -- MULTIPLEX BUFFER UTILIZATION DESCRIPTOR 77
2-57 -- COPYRIGHT DESCRIPTOR 77
2-58 -- MAXIMUM BITRATE DESCRIPTOR 78
2-59 -- PRIVATE DATA INDICATOR DESCRIPTOR 78
2-60 -- SMOOTHING BUFFER DESCRIPTOR 79
2-61 -- STD DESCRIPTOR 79
A-1 -- ISO/IEC 13818-1 DSM CC 91
A-2 -- COMMAND_ID ASSIGNED VALUES 91
A-3 -- DSM_CC CONTROL 93
A-4 -- SELECT MODE ASSIGNED VALUES 94
A-5 -- DSM CC ACKNOWLEDGEMENT 95
A-6 -- TIME CODE 96
C-1 -- COMPOSITE_DESCRIPTOR 106
C-2 -- SUB-DESCRIPTOR 106
C-3 -- PROGRAM ASSOCIATION TABLE BANDWIDTH USAGE (BPS) 107
C-4 -- PROGRAM MAP TABLE BANDWIDTH USAGE (BPS) 107
D-1 -- REMULTIPLEXING STRATEGY 115
E-1 -- PES PACKET HEADER EXAMPLE 120
I-1 -- LIST OF COMPANIES SUPPLYING PATENT STATEMENTS 130
List of Equations
2-1 -- PCR BASE 14
2-2 -- PCR EXTENSION 14
2-3 -- PROGRAM CLOCK REFERENCE 14
2-4 -- INPUT ARRIVAL TIME 15
2-5 -- TRANSPORT RATE 15
2-6 -- SYSTEM INFORMATION MAIN BUFFER TRANSFER RATE 19
2-7 -- OPCR BASE 28
2-8 -- OPCR EXTENSION 28
2-9 -- OPCR 28
2-10 -- PRESENTATION TIMESTAMP 38
2-11 -- DECODE TIMESTAMP 39
2-12 -- ELEMENTARY STREAM CLOCK REFERENCE BASE 39
2-13 -- ELEMENTARY STREAM CLOCK REFERENCE EXTENSION 39
2-14 -- ELEMENTARY STREAM CLOCK REFERENCE 39
2-15 -- BUFFER SIZE FOR AUDIO STREAM 43
2-16 -- BUFFER SIZE FOR VIDEO STREAM 43
2-17 -- SYSTEM CLOCK REFERENCE BASE 55
2-18 -- SYSTEM CLOCK REFERENCE EXTENSION 55
2-19 -- SYSTEM CLOCK REFERENCE 55
2-20 -- ARRIVAL TIME 56
2-21 -- SCR BASE FOR CBR PROGRAM STREAM 60
2-22 -- SCR EXTENSION FOR CBR PROGAM STREAM 60
2-23 -- RATIO OF SYSTEM CLOCK FREQUENCY AND AUDIO SAMPLE RATE 60
2-24 -- RATIO OF SYSTEM CLOCK FREQUENCY TO VIDEO PICTURE RATE 61
2-25 -- CLOCK ACCURACY DETERMINATION 76
2-26 -- PACKET RATE 83
2-27 -- PACKET RATE 83
2-28 -- MAXIMUM PACKET RATE 83
2-29 -- SAMPLE RATE LOCKING IN TRANSPORT STREAM 84
2-30 -- RATIO OF SYSTEM CLOCK FREQUENCY TO VIDEO PICTURE RATE 84
Foreword
FOREWORD PROVIDED BY ISO
Introduction
The systems part of this Recommendation | International Standard addresses the combining of one or more elementary streams of video and audio, as well as other data, into single or multiple streams which are suitable for storage or transmission. Systems coding follows the syntactical and semantic rules imposed by this specification and provides information to enable synchronized decoding of decoder buffers over a wide range of retrieval or receipt conditions.
System coding shall be specified in two forms: the Transport Stream and the Program Stream. Each is optimized for a different set of applications. Both the Transport Stream and Program Stream defined in this Recommendation | International Standard provide coding syntax which is necessary and sufficient to synchronize the decoding and presentation of the video and audio information, while ensuring that data buffers in the decoders do not overflow or underflow. Information is coded in the syntax using time stamps concerning the decoding and presentation of coded audio and visual data and time stamps concerning the delivery of the data stream itself. Both stream definitions are packet-oriented multiplexes.
The basic multiplexing approach for single video and audio elementary streams is illustrated in figure 0-1 on page xi . The video and audio data is encoded as described in ITU-T Rec. H.262 | ISO/IEC 13818-2 and ISO/IEC 13818-3. The resulting compressed elementary streams are packetized to produce PES packets. Information needed to use PES packets independently of either Transport Streams or Program Streams may be added when PES packets are formed. This information is not needed and need not be added when PES packets are further combined with system level information to form Transport Streams or Program Streams. This systems standard covers those processes to the right of the vertical dashed line.
Figure 0-1 -- Simplified overview of ITU-T Rec. H.222.0 | ISO/IEC 13818-1 scope
The Program Stream is analogous and similar to ISO/IEC 11172 Systems layer. It results from combining one or more streams of PES packets, which have a common time base, into a single stream.
For applications that require the elementary streams which comprise a single program to be in separate streams which are not multiplexed, the elementary streams can also be encoded as separate Program Streams, one per elementary stream, with a common time base. In this case the values encoded in the SCR fields of the various streams shall be consistent.
Like the single Program Stream, all elementary streams can be decoded with synchronization.
The Program Stream is designed for use in relatively error-free environments and is suitable for applications which may involve software processing of system information such as interactive multi-media applications. Program Stream packets may be of variable and relatively great length.
The Transport Stream combines one or more programs with one or more independent time bases into a single stream. PES packets made up of elementary streams that form a program share a common timebase. The Transport Stream is designed for use in environments where errors are likely, such as storage or transmission in lossy or noisy media. Transport Stream packets are 188 bytes in length.
Program and Transport Streams are designed for different applications and their definitions do not strictly follow a layered model. It is possible and reasonable to convert from one to the other; however, one is not a subset or superset of the other. In particular, extracting the contents of a program from a Transport Stream and creating a valid Program Stream is possible and is accomplished through the common interchange format of PES packets, but not all of the fields needed in a Program Stream are contained within the Transport Stream; some must be derived. The Transport Stream may be used to span a range of layers in a layered model, and is designed for efficiency and ease of implementation in high bandwidth applications.
The scope of syntactical
展开阅读全文