1、 Copyright 2010 by THE SOCIETY OF MOTION PICTURE AND TELEVISION ENGINEERS 3 Barker Avenue., White Plains, NY 10601 (914) 761-1100 Approved April 30, 2010 Table of Contents Page Foreword . 2 Intellectual Property 2 Introduction 2 1 Scope . 3 2 Conformance Notation . 3 3 Normative References . 4 4 Acr
2、onyms (Informative) . 4 5 Definitions (Normative) 5 6 Transmission Protocols (Normative) . 5 6.1 Relationship with other SMPTE 2022 Standards . 5 6.2 TS Packets per Media Datagram . 6 6.3 Timing Recovery 6 6.4 FEC Operation . 6 6.5 Media Datagram RTP Numbering 8 6.6 Session 9 7 Compliance 9 Annex A
3、Bibliography (Informative) . 12 Annex B Sending Device Options (Informative). 13 Annex C Clock Recovery Method (Informative) . 14 Page 1 of 16 pages SMPTE ST 2022-3:2010 SMPTE STANDARD Unidirectional Transport of Variable Bit Rate MPEG-2 Transport Streams on IP Networks SMPTE ST 2022-3:2010 Page 2 o
4、f 16 pages Foreword SMPTE (the Society of Motion Picture and Television Engineers) is an internationally-recognized standards developing organization. Headquartered and incorporated in the United States of America, SMPTE has members in over 80 countries on six continents. SMPTEs Engineering Document
5、s, including Standards, Recommended Practices, and Engineering Guidelines, are prepared by SMPTEs Technology Committees. Participation in these Committees is open to all with a bona fide interest in their work. SMPTE cooperates closely with other standards-developing organizations, including ISO, IE
6、C and ITU. SMPTE Engineering Documents are drafted in accordance with the rules given in Part XIII of its Administrative Practices. SMPTE ST 2022-3 was prepared by Technology Committee 32NF. Intellectual Property At the time of publication no notice had been received by SMPTE claiming patent rights
7、essential to the implementation of this Standard. However, attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. SMPTE shall not be held responsible for identifying any or all such patent rights. Introduction IP-based networks have beco
8、me increasingly important for delivery of compressed content which is contained within MPEG-2 Transport Streams. However, existing transport protocols do not fully meet the user requirements. This standard describes modifications to existing transport protocols which can be used for the unidirection
9、al carriage of piecewise constant variable bit rate MPEG-2 Transport Streams over IP networks. This standard is intended for real-time audio/video applications for contribution services over an IP network to professional broadcast equipment. The applications addressed by this standard may employ any
10、 compression scheme that is supported by the MPEG-2 Transport Stream. This standard also provides for signal recovery from limited network errors through a forward error correction scheme. SMPTE ST 2022-3:2010 Page 3 of 16 pages 1 Scope This standard defines a transport protocol for the carriage of
11、real-time piecewise constant variable bit rate (VBR) MPEG-2 Transport Streams over IP networks, either with or without Forward Error Correction for recovery from network transmission errors. A piecewise constant VBR transport stream can only vary at the PCRs of the program under consideration per IS
12、O/IEC 13818-1:2007 2.4.2.2. This standard covers the encapsulation and transmission of MPEG-2 transport streams but does not cover other processes such as MPEG-2 encoding or multiplexing. The scope of this standard is shown in Figure 1. below. Figure 1 SMPTE 2022-3 Scope Boundaries 2 Conformance Not
13、ation Normative text is text that describes elements of the design that are indispensable or contains the conformance language keywords: “shall“, “should“, or “may“. Informative text is text that is potentially helpful to the user, but not indispensable, and can be removed, changed, or added editori
14、ally without affecting interoperability. Informative text does not contain any conformance keywords. All text in this document is, by default, normative, except: the Introduction, any section explicitly labeled as “Informative“ or individual paragraphs that start with “Note:” The keywords “shall“ an
15、d “shall not“ indicate requirements strictly to be followed in order to conform to the document and from which no deviation is permitted. The keywords, “should“ and “should not“ indicate that, among several possibilities, one is recommended as particularly suitable, without mentioning or excluding o
16、thers; or that a certain course of action is preferred but Multiplexer ASI Transmitter Multiplexer Other 2022-3 sender may be part of a device with associated functions 2022-3 does not apply to the functions of the associated device Sender Receiver Decoder 2022-3 receiver may be part of a device wit
17、h associated functions ASI Receiver Encoder Other 2022-3 covers only encapsulation and de-encapsulation of MPEG-2 TS to IP/RTP with or without FEC SMPTE ST 2022-3:2010 Page 4 of 16 pages not necessarily required; or that (in the negative form) a certain possibility or course of action is deprecated
18、but not prohibited. The keywords “may“ and “need not“ indicate courses of action permissible within the limits of the document. The keyword “reserved” indicates a provision that is not defined at this time, shall not be used, and may be defined in the future. The keyword “forbidden” indicates “reser
19、ved” and in addition indicates that the provision will never be defined in the future. A conformant implementation according to this document is one that includes all mandatory provisions (“shall“) and, if implemented, all recommended provisions (“should“) as described. A conformant implementation n
20、eed not implement optional provisions (“may“) and need not implement them as described. Unless otherwise specified, the order of precedence of the types of normative information in this document shall be as follows: Normative prose shall be the authoritative definition; Tables shall be next; followe
21、d by formal languages; then figures; and then any other language forms. 3 Normative References The following standards contain provisions which, through reference in this text, constitute provisions of this standard. At the time of publication, the editions indicated were valid. All standards are su
22、bject to revision, and parties to agreements based on this standard are encouraged to investigate the possibility of applying the most recent edition of the standards indicated below. SMPTE 2022-1-2007, Forward Error Correction for Real-Time Video/Audio Transport Over IP Networks SMPTE 2022-2-2007,
23、Unidirectional Transport of Constant Bit Rate MPEG-2 Transport Streams on IP Networks ISO/IEC 13818-1:2007, ITU-TH.222.0-2006, Generic Coding of Moving Pictures and Associated Audio Information Systems 4 Acronyms (Informative) CBR: Constant Bit Rate D: Number of Rows in an FEC matrix FEC: Forward Er
24、ror Correction IP: Internet Protocol (see IETF STD 05) L: Number of Columns in an FEC matrix PCR: Program Clock Reference RTP: Real Time Protocol (see IETF RFC 3550) TS: Transport Stream (see ISO/IEC 13818-1) UDP: User Datagram Protocol (see IETF STD 06) VBR: Variable Bit Rate XOR: Exclusive OR SMPT
25、E ST 2022-3:2010 Page 5 of 16 pages 5 Definitions (Normative) Block Aligned FEC Operation: Block Aligned FEC operation is a correction scheme using a two dimensional matrix where the media datagrams are a contiguous group of L x D datagrams. The media datagrams are protected as follows: Level A prot
26、ection is provided by L FEC datagrams derived from each column for the FEC matrix. Optional level B protection is achieved by D FEC datagrams derived from each row for the FEC matrix. The level A FEC stream shall protect all media packets exactly once. The optional level B FEC stream shall protect a
27、ll media packets exactly once. CBR Transport Stream: A MPEG-2 compliant Transport Stream constructed such that the rate of departure of packets from a sender is constant over time. Contribution Services: Unidirectional transmission of high quality media content to a media processing facility. These
28、services require high quality transmission such that the signal maintains sufficient quality to support further processing prior to final distribution. Fill Datagram: An RTP Datagram consisting of a header and no payload. FEC Matrix: A set of Media datagrams ordered in a matrix with L columns and D
29、rows. The datagrams are entered into the matrix to fill each row sequentially with incremented RTP sequence numbers. Media Datagram: An RTP Datagram consisting of a header and data payload composed of an integer number of MPEG-2 TS packets Null Packet: An MPEG-2 Transport Stream packet consisting of
30、 a PID value of 0x1FFF and an undefined payload. Piecewise Constant: A VBR transport stream that can change rate at packets containing PCRs such that the rate of departure of packets from a sender is constant between successive PCR packets, according to ISO/IEC 13818-1 2.4.2.2. RTP Datagram: An RTP
31、Packet as defined in RFC3550. A self-contained, independent entity of data carrying sufficient information to be routed from the source to the destination computer without reliance on earlier exchanges between this source and destination computer and the transporting network. TS Packet: A MPEG-2 Tra
32、nsport Stream packet of 188 or 204 bytes in length. (The use of 188 and 204 byte packets are defined as class of service in SMPTE 2022-2.) VBR Transport Stream: A MPEG-2 compliant Transport Stream such that the rate of departure of packets from a sender is not constant. 6 Transmission Protocols (Nor
33、mative) 6.1 Relationship with other SMPTE 2022 Standards This standard requires compliance with SMPTE 2022-1 and SMPTE 2022-2, with the exceptions that are defined in this standard. If a conflict occurs between this standard and either SMPTE 2022-1 or SMPTE 2022-2, this standard shall prevail. The P
34、ayload Type field of the RTP header shall be set to 33 indicating MPEG-2 TS. SMPTE ST 2022-3:2010 Page 6 of 16 pages 6.2 TS Packets per Media Datagram Senders and receivers shall use a maximum of 1, 4 or 7 Transport Stream packets per Media datagram for the duration of a session as defined in Sectio
35、n 6.6 below. This maximum number (1, 4 or 7) of Transport Stream packets per Media datagram is the Packet_per_Datagram_max. The sender shall include between 0 and Packet_per_Datagram_max MPEG-2 Transport Stream packets per Media datagram. Note: Long-length Media datagrams can cause longer latency in
36、 building FEC Matrices. A larger number of short Media datagrams results in more network encapsulation overhead, and a subsequent higher bit rate. So, the value chosen for Packet_per_Datagram_max will be a compromise between these factors. This standard allows for two modes of operation: Mode 1 In M
37、ode 1 Media Datagrams shall always be sent with a size of Packet_per_Datagram_max. The rate at which the Media Datagrams are sent varies to accommodate the variation in Bit Rate. Mode 2 In Mode 2 Media Datagrams shall always be sent at a constant rate. The number of TS packets per Media Datagram var
38、ies from 0 to Packet_per_Datagram_max to accommodate the variation in Bit Rate. FEC datagrams shall always contain Packet_per_Datagram_max transport packets per RTP datagram for a session. The size of the FEC RTP datagram can be used by the receiver to determine Packet_per_Datagram_max for this sess
39、ion. Note: See Annex B for further discussion of these two modes. 6.3 Timing Recovery RTP header Timestamps do not need to be locked to any PCR in the VBR or CBR MPEG-2 transport stream being carried. The PCR shall not be modified (same value and same position) by the sending or receiving device. Th
40、ere are a number of ways to achieve clock recovery in an MPEG-2 transport stream. A standardized method of clock recovery is not specified in this document. However, Annex C. describes one clock recovery method based upon the fact that the bit rate of a piecewise constant single program MPEG-2 TS si
41、gnal is constant between two PCRs. 6.4 FEC Operation FEC operation shall be as defined in SMPTE 2022-1, with the following clarifications and exceptions. For sender and receiver FEC calculations, all datagrams are filled to Packet_per_Datagram_max size with binary zeros before FEC calculations are p
42、erformed, and all sender and receiver FEC calculations are performed using Packet_per_Datagram_max size media datagrams and Packet_per_Datagram_max FEC datagrams. Note: The timing recovery and subsequent jitter buffer assignment does not define the recovery mechanism for FEC buffer sizing. When FEC
43、is used, the receiver will normally wait until an FEC datagram is received to define the maximum_latency and maximum_bit_rate of the signal and will then define the FEC buffer size. However, if FEC is not used, the receiver must determine an acceptable interval to wait until it recognizes the lack o
44、f need for a FEC buffer. Since this is a receiver implementation choice and has no impact on compatibility, it is left to the receiver manufacturer to define the best practice for the intended use. SMPTE ST 2022-3:2010 Page 7 of 16 pages 6.4.1 Mode 1 operation Only Block Aligned FEC Operation shall
45、be supported. A sending device shall support a maximum_latency time. This maximum_latency time is used to limit the latency in building the FEC matrix in both the sending and receiving devices. Maximum_latency time shall be configurable only in the sending device. The receiver shall not require conf
46、iguration of maximum_latency time for a session. While a longer latency is not prohibited, a SMPTE 2022-3 compliant sender and receiver shall support a minimum FEC buffer size of 1MB. A 1MB buffer allows a maximum_latency of 500 ms at a Maximum_bit_rate of 16 Mbs. Figure 2 Filling a FEC matrix after
47、 maximum_latency for Mode 1 Operation Media Dgrm 0 Media Dgrm 1 Media Dgrm L-1 Media Dgrm L Media Dgrm L+1 Media Dgrm 2L-1 Media Dgrm 2L Media Dgrm 2L+1 Media Dgrm 2L-1 Media Dgrm (D-2)L Fill Dgrm (D-2)L-1 Fill Dgrm (D-1)L Fill Dgrm (D-1)L+1 Fill Dgrm (D-1)L-1 L Columns D Rows White boxes depict dat
48、agrams without packets Fill Dgrm (D-2)L+1 Point in time where maximum_latency limit is reached SMPTE ST 2022-3:2010 Page 8 of 16 pages Figure 3 Accommodating Datagrams not filled prior to maximum_latency limit The latency timer is initialized at the time the last media datagram of an FEC block is se
49、nt. It is possible for the FEC matrix to be partially filled after a configured maximum_latency time. When this occurs, the sender shall immediately complete the FEC matrix. The sender shall fill the remainder of the matrix with Media datagrams containing zero MPEG-2 transport packets (Fill Datagrams). Figure 3 above shows an example of a partially filled FEC Matrix when the maximum_latency time expires. In the figure grey blocks show Media Datagrams that are filled with MPEG-2 TS packets. Only Media Datagrams filled to the Packet_per_