INTERNET-DRAFT Ladan Gharai
<draft-ietf-avt-smpte292-video-00.txt><draft-ietf-avt-smpte292-video-01.txt> USC/ISI Gary Goncher Tektronix Colin Perkins USC/ISI David Richardson University of Washington Allison Mankin USC/ISI July 13,Nov 24, 2000 RTP Payload Format for SMPTE 292M <draft-ietf-avt-smpte292-video-00.txt><draft-ietf-avt-smpte292-video-01.txt> Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet- Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Abstract This document specifies a packetization scheme for encapsulating uncompressed HDTV as defined by SMPTE 292M into a payload format for the Real-Time Transport Protocol (RTP). The RTP packet counter is extended to 2632 bits to accommodate SMPTE 292M's 1.485Gb/s data rate, and additional positioning information is added to the payload header.rate. 1. Introduction The serial digital interface, SMPTE 292M,292M, defines a universal medium of interchange for uncompressed HDTV between various types of video equipment (camera's, encoders, VTRs, ...) at data rates of 1.485Gb/s (and 1.485/1.001 Gb/s). Source formats transfered by SMPTE 292M are SMPTE 260M, 295M, 274M and 296M. Source data for these formats are 10-bit words, sampled at 4:2:2. In this draftmemo we specify how to transfer SMPTE 292M over RTP. 2. A Note onThis memo only addresses the transfer of uncompressed HDTV. Compressed HDTV over RTP HDTVis compressed usinga subset of MPEG-2  as its compression scheme. This subset, which is fully described in document A/53  of the Advanced Television Standards Committee. The ATSC has also adopted the MPEG-2 transport system (ISO/IEC 13818-1) . Therefore: 1. The HDTV transport system is a compatible subset of the MPEG-2 transport system. Section 2 of RFC 2250  describes the RTP payload for MPEG-2's transport system, where multiple fixed length (188 bytes) MTS packets are aggregated into a single RTP packet. 2. Compressed HDTV is a subset of MPEG-2 MP@HL with some additional restrictions. Section 3 of RFC 2250 describes a packetization scheme for MPEG-2 elementary streams. The additional restrictions of HDTV do not have any implications for RTP packetization. 2. Conventions Used in this Document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119. 3. Payload Design Each video frame of SMPTE292M inSMPTE 292M is packetized into a number of variableconstant size RTP packets. All active, vertical blanking and timing information is packetized. The end of a frame is marked by the M bit in the RTP header. A single packet may contain data for two consecutive scan lines. The SMPTE292MSMPTE 292M decoder uses the sync info in the scan lines to detect the start of scan lines. A single packet may also contain information from adjacent scan lines in two consecutive frames, or by agreement between sender and receiver the last packet of a video frame may be padded and theto the full length of all 292M RTP packets, in which case a new will frame start in a new packet. The standard 16 bit RTP sequence counter is extended to 2632 bits to accommodate HDTV's high data rates. At 1.485Gb/s, with packet sizes of at least 1k, 26bits1kByte, 32bits allows for 5minutean approximate 6 hour period before the sequence counter wraps around. The payload header includesA 10Mhz timestamp is used as the RTP header's timestamp. This allows the receiver to reconstruct the offsettiming of the payload data inSMPTE 292M stream, without knowledge of the video frame. The offset is for 20-bit video words and accounts for active and inactive samples.exact type of source format (e.g. SMPTE 274M or SMPTE 296M). Given SMPTE292M'sSMPTE 292M's 4:2:2 color subsampling, scan line fragmentation mustMUST occur on sample-pair boundaries, such that Y and Cb and Cr values are not split across packets. This means the payload section of each packet will be a multiple of 40bits. In addition, to ensure unique timestamps, each packet SHOULD contain more than 8 video samples (20 bytes). 4. RTP Packetization The standard RTP header is followed by a 4 byte payload header, and the payload data. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | V |P|X| CC |M| PT | sequence# (low bits) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | time stamp | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ssrc | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |squence#(high bits)| offset in frame| sequence# (high bits) | unused | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 4.1. The RTP Header The following fields of the RTP fixed header are used for SMPTE 292M encapsulation: Payload Type (PT): 7bits A dynamically allocated payload type field which designates the payload as SMPTE 292M. Timestamp: 32 bits The timestamp field shall be defined from a counter at 10 MHz. The timestamp shall be defined as the arrival time of the first 20-bit video sample to be transmitted in the current packet. At an arrival rate of 74.25 MHz for 20-bit SMPTE 292M video samples with 24/30/60 Hz24/30/60Hz frame rates, the timestamp will be unique for packets with more than 8 video samples (20 bytes).bytes) and therefore, each packet SHOULD contain more than 8 samples. Timestamps shall increase monotonically until they roll over at 32 bits. TheOne possible means of deriving the 10 MHz timestamp clock may be obtainedclocks is from a GPS (Global Positioning System) board. These boards have a disciplined oscillator that is synchronized to GPS time. The disciplined oscillator can be as accurate as 1 in 10-12, but is more typically 1 in 10-8. Thus clocks at widely separate locations can be synchronized with an accuracy of 100 ns for video timing recovery. Marker bit (M): 1bit The Marker bit denotes the end of a video frame, and is set to 1 for the last packet of the video frame and is otherwise set to 0 for all other packets. Sequence Number (low bits): 16 bits The low order bits for RTP sequence counter. The standard 16 bit RTP sequence number is augmented by 10with another 16 bits in the payload header in order to accommodate the 1.485Gb/s data rate of SMPTE292M.SMPTE 292M. 4.2. Payload Header Sequence Number (high bits): 10bits16bits The high order bits for the 26bit32bit RTP sequence counter. Offset in Frame: 22bits An offset for the position of 20-bit video words in the video frame. The offset includes all information inUnused: 16bits MUST be set to zero at the video framesender, and scan lines. Range of values are: 1. 0 to 1125*2750-1 for 1080/24p. 2. 0 to 1125*2200-1 for 1080/30i. 3. 0 to 750*1650-1 for 720/60p. 5.ignored at the receiver. 4.3. Payload Format For 4:2:2 color subsampling Cb and Cr values are subsampled by a factor of two horizontally and are co-sited with even numbered Y samples. Therefore, Cb, Cr and Y samples mustMUST be arranged and transmitted in the following order: Cb, Y, Cr, Y, Cb, Y, Cr, ... where the first Cb, Y, Cr sequence refers to co-sited luminance and color-difference samples, and the next Y belongs to the next luminance sample. Therefore, as set forth in RFC2431,RFC2431 , for 10-bit words, each group of four samples must be encoded into a 40-bit word (five octets) prior to transmission. The following is a representation of a 720 sample packet with 10-bit quantization: 0 1 2 3 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 +---------+---------+---------+---------+ | Cb0 | Y0 | Cr0 | Y1 | +---------+---------+---------+---------+ | Cb1 | Y2 | Cr1 | Y3 | +---------+---------+---------+---------+ . . . +---------+---------+---------+---------+ | Cb359 | Y718 | Cr359 | Y719 | +---------+---------+---------+---------+ (Note that the word width is 40 bits) +-------+-------+-------+-------+-------+ Octets: | 0 | 1 | 2 | 3 | 4 | +-------+-------+-------+-------+-------+ The octets shown in these diagrams are transmitted in network bit and byte order, that is, left-to-right as shown. 5. RTCP Considerations RFC1889 recommends transmission of RTCP packets every 5 seconds or at a reduced minimum in seconds of 360 divided by the session bandwidth in kilobits/seconds. At 1.485Gb/s the reduced minimum interval computes to 0.2ms or 4028 packets per second. It should be noted that the sender's octet count in SR packets wraps around in 23 seconds, and that the cumulative number of packets lost wraps around in 93 seconds. This means these two fields cannot accurately represent octet count and number of packets lost since the beginning of transmission, as defined in RFC1889. Therefore for network monitoring purposes other means of keeping track of these variables should be used. 6. MIME Registration This document defines a new RTP payload name and associated MIME type, SMPTE 292M. The registration forms for MIME type for SMPTE 292M video is enclosed below: MIME media type name: video MIME subtype name: SMPTE 292M Required parameters: None Optional parameters: None Encoding considerations: SMPTE 292M video can be transmitted with RTP as specified in "draft-ietf-avt-smpte292-video-01". Security considerations: None Interoperability considerations: NONE Published specification: SMPTE 292M draft-ietf-avt-smpte292-video-01 Applications which use this media type: Video communication. Additional information: None Magic number(s): None File extension(s): DV Macintosh File Type Code(s): None Person & email address to contact for further information: Ladan Gharai <email@example.com> Intended usage: COMMON Author/Change controller: Ladan Gharai <firstname.lastname@example.org> 7. Mapping to SDP Parameters Parameters are mapped to SDP  as follows: m=video 23456 RTP/AVP 111 a=rtpmap:111 SMPTE 292M/10000000 a=fmtp:111 length=1400 In this example, a dynamic payload type 111 is assumed for SMPTE 292M, with packet sizes of 1400bytes. 8. Security Considerations RTP packets using the payload format defined in this specification are subject to the security considerations discussed in the RTP specification ,specification, and any appropriate RTP profile. This implies that confidentiality of the media streams is achieved by encryption. Because the data compression used with this payload format is applied end-to- end, encryption may be performed after compression so there is no conflict between the two operations.This payload type does not exhibit any significant non-uniformity in the receiver side computational complexity for packet processing to cause a potential denial-of-service threat. It is perhaps to be noted that the bandwidth of this payload is high enough (1.5 Gbps without the RTP overhead) to cause potential for denial-of-service if transmitted onto most currently available Internet paths. In the absence from the standards track of a suitable congestion control mechanism for flows of this sort, use of the payload should be narrowly limited to suitably connected network endpoints and great care taken with the scope of multicast transmissions. This potential threat is common to all high bit rate applications. 7.9. IANA Considerations [To be done] 8.See Section 6. 10. Full Copyright Statement Copyright (C) The Internet Society (1999).(2000). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Soci- ety or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be fol- lowed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MER- CHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE." 9.11. Authors' Addresses Ladan Gharai email@example.com Gary Goncher firstname.lastname@example.org Allison Mankin email@example.comColin Perkins firstname.lastname@example.org David Richardson email@example.com 10.Allison Mankin firstname.lastname@example.org 12. Bibliography  Society of Motion Picture and Television Engineers, Bit-Serial Digital Interface for High-Definition Television Systems, SMPTE292M,SMPTE 292M, 1998.  Society of Motion Picture and Television Engineers, 1280*720 Scanning, Analog and Digital Representation and Analog Interfaces, SMPTE 296M, 1998.  ISO/IEC International Standard 13818-2; "Generic coding of moving pictures and associated audio information: Video", 1996.  ATSC Digital Television Standard Document A/53, September 1995, http://www.atsc.org  ISO/IEC International Standard 13818-1; "Generic coding of moving pictures and associated audio information: Systems",1996.  Schulzrinne, Casner, Frederick, Jacobson, "RTP: A transport protocol for real time Applications", RFC 1889, IETF, January 1996.  Hoffman, Fernando, Goyal, Civanlar, "RTP Payload Format for MPEG1/MPEG2 Video", RFC 2250, IETF, January 1998.  Schulzrinne, "RTP Profile for Audio and Video Conferences with Minimal Control", RFC 1890, IETF, January 1996.  M. Handley and V. Jacobson, "SDP: Session Description Protocol", RFC 2327, April 1998.  IETF RFC 2119, "Key words for use in RFCs to Indicate Requirement Levels".  D. Tynan, "RTP Payload Format for BT.656 Video Encoding", RFC 2431, October 1998.