draft-ietf-avt-smpte292-video-03.txt   draft-ietf-avt-smpte292-video-04.txt 
INTERNET-DRAFT Ladan Gharai INTERNET-DRAFT Ladan Gharai
<draft-ietf-avt-smpte292-video-03.txt> USC/ISI <draft-ietf-avt-smpte292-video-04.txt> USC/ISI
Gary Goncher Gary Goncher
Tektronix Tektronix
Colin Perkins Colin Perkins
USC/ISI USC/ISI
David Richardson David Richardson
University of Washington University of Washington
Allison Mankin Allison Mankin
USC/ISI USC/ISI
July 20, 2001 March 1, 2002
RTP Payload Format for SMPTE 292M RTP Payload Format for SMPTE 292M Video
<draft-ietf-avt-smpte292-video-03.txt> <draft-ietf-avt-smpte292-video-04.txt>
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026. all provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet- other groups may also distribute working documents as Internet-
Drafts. Drafts.
skipping to change at page 1, line 41 skipping to change at page 1, line 41
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
Abstract Abstract
This document specifies a packetization scheme for encapsulating This document specifies a RTP payload format for encapsulating
uncompressed HDTV as defined by SMPTE 292M into a payload format for uncompressed HDTV as delivered by a SMPTE 292M transport stream.
the Real-Time Transport Protocol (RTP). The RTP packet counter is
extended to 32 bits to accommodate SMPTE 292M's 1.485Gb/s data rate.
1. Introduction 1. Introduction
The serial digital interface, SMPTE 292M[1], defines a universal medium The serial digital interface, SMPTE 292M[1], defines a universal medium
of interchange for uncompressed HDTV between various types of video of interchange for uncompressed High Definition Television (HDTV)
equipment (camera's, encoders, VTRs, ...) at data rates of 1.485Gb/s between various types of video equipment (cameras, encoders, VTRs,
(and 1.485/1.001 Gb/s). Source formats transfered by SMPTE 292M are etc.). SMPTE 292M stipulates that the source data be in 10bit words and
SMPTE 260M, 295M, 274M and 296M[2-5]. Source data for these formats are the total data rate be 1.485 Gbps or 1.485/1.001 Gbps.
10-bit words, sampled at 4:2:2. In this memo we specify how to
transfer SMPTE 292M over RTP. A SMPTE 292M television line is divided into four parts: (1) start of
active video timing reference (SAV); (2) digital active line; (3) end
of active video timing reference (EAV); and (4) digital line blanking.
The EAV and SAV are made up of three 10 bit words, with constant values
of 0x000 0x000 0x3FF and an additional word carrying a number of flags.
This includes an F flag which designate which field (1 or 2) the line is
transporting and also a V flag which indicates field blanking. EAV is
followed by a line number field. Line number is a 11bit value set in two
10bit words.
The number of words and format for active lines and line blanking is
defined by source format documents. Currently, source video formats
transfered by SMPTE 292M includes SMPTE 260M, 295M, 274M and 296M[2-5].
In this memo we specify how to transfer SMPTE 292M over RTP,
irrespective of the source format.
This memo only addresses the transfer of uncompressed HDTV. Compressed This memo only addresses the transfer of uncompressed HDTV. Compressed
HDTV is a subset of MPEG-2 [6], which is fully described in document HDTV is a subset of MPEG-2 [6], which is fully described in document
A/53 [7] of the Advanced Television Standards Committee. The ATSC has A/53 [7] of the Advanced Television Standards Committee. The ATSC has
also adopted the MPEG-2 transport system (ISO/IEC 13818-1) [8]. also adopted the MPEG-2 transport system (ISO/IEC 13818-1) [8].
Therefore: Therefore RFC 2250 [9] sufficiently describes transport for compressed
HDTV.
1. The HDTV transport system is a compatible subset of the MPEG-2
transport system. Section 2 of RFC 2250 [9] 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 2. Conventions Used in this Document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119[10]. document are to be interpreted as described in RFC 2119[10].
3. Payload Design 3. Payload Design
Each video frame of SMPTE 292M is packetized into a number of constant Each SMPTE 292M data line is packetized into a number of RTP packets.
size RTP packets. All active, vertical blanking and timing information All active, vertical blanking and timing information is packetized.
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 SMPTE 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 Start of active video (SAV) and end of active video (EAV) signals SHOULD
two consecutive frames, or by agreement between sender and receiver the NOT be fragmented across packets, as the SMPTE 292M decoder uses the
last packet of a video frame may be padded to the full length of all sync info in the scan lines to detect the start of scan lines. All
292M RTP packets, in which case a new frame will start in a new packet. payload header information, i.e., line number, pertains to the first
data sample in the packet. The end of a frame is marked by the M bit in
the RTP header.
The standard 16 bit RTP sequence counter is extended to 32 bits to The standard 16 bit RTP sequence counter is extended to 32 bits to
accommodate HDTV's high data rates. At 1.485Gb/s, with packet sizes of accommodate HDTV's high data rates. At 1.485 Gbps, with packet sizes of
at least 1kByte, 32bits allows for an approximate 6 hour period before at least 1kByte, 32bits allows for an approximate 6 hour period before
the sequence counter wraps around. the sequence counter wraps around.
A 10Mhz timestamp is used as the RTP header's timestamp. This allows the A 148500 Hz (or 148500/1.001 Hz) timestamp is used as the RTP timestamp.
receiver to reconstruct the timing of the SMPTE 292M stream, without This allows the receiver to reconstruct the timing of the SMPTE 292M
knowledge of the exact type of source format (e.g. SMPTE 274M or SMPTE stream, without knowledge of the exact type of source format (e.g. SMPTE
296M). 274M or SMPTE 296M).
Given SMPTE 292M's 4:2:2 color subsampling, scan line fragmentation MUST A source formats video line MUST NOT be fragmented across related Y and
occur on sample-pair boundaries, such that Y and Cb and Cr values are Cb and Cr values. For 4:2:0 this translates to 4 pixels, represented as
not split across packets. This means the payload section of each packet Y1, Y2, Y3, Y4, Cr, Cb, in 6 10bit words. For 4:2:2 video this
will be a multiple of 40bits. In addition, to ensure unique timestamps, translates to 2 pixels (Y1, Y2, Cr, Cb) and 4 10bit words. for 4:4:4
each packet SHOULD contain more than 8 video samples (20 bytes). video this translates to 1 pixel (Y, Cr, Cb) and 3 10bit words.
4. RTP Packetization 4. RTP Packetization
The standard RTP header is followed by a 4 byte payload header, and the The standard RTP header is followed by a 4 byte payload header, and the
payload data. payload data.
0 1 2 3 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 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) | | V |P|X| CC |M| PT | sequence# (low bits) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| time stamp | | time stamp |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ssrc | | ssrc |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| sequence# (high bits) | unused | | sequence# (high bits) | line no |F|V| Z |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
4.1. The RTP Header 4.1. The RTP Header
The following fields of the RTP fixed header are used for SMPTE 292M The following fields of the RTP fixed header are used for SMPTE 292M
encapsulation: encapsulation:
Payload Type (PT): 7bits Payload Type (PT): 7bits
A dynamically allocated payload type field which designates the A dynamically allocated payload type field which designates the
payload as SMPTE 292M. payload as SMPTE 292M.
Timestamp: 32 bits Timestamp: 32 bits
The timestamp field shall be defined from a counter at 10 MHz. The For a SMPTE 292M transport stream at 1.485 Gbps (or 1.485/1.001
timestamp shall be defined as the arrival time of the first 20-bit Gbps), the timestamp field contains a 148500 Hz (or 148500/1.001
video sample to be transmitted in the current packet. At an arrival Hz)
rate of 74.25 MHz for 20-bit SMPTE 292M video samples with timestamp, respectively. This allows for a unique timestamp for
24/30/60Hz frame rates, the timestamp will be unique for packets each 10bit word.
with more than 8 video samples (20 bytes) and therefore, each
packet SHOULD contain more than 8 samples. Timestamps shall
increase monotonically until they roll over at 32 bits.
One possible means of deriving the 10 MHz clocks 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 Marker bit (M): 1bit
The Marker bit denotes the end of a video frame, and is set to 1 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 the last packet of the video frame and is otherwise set to 0
for all other packets. for all other packets.
Sequence Number (low bits): 16 bits Sequence Number (low bits): 16 bits
The low order bits for RTP sequence counter. The standard 16 bit The low order bits for RTP sequence counter. The standard 16 bit
RTP sequence number is augmented with another 16 bits in the RTP sequence number is augmented with another 16 bits in the
payload header in order to accommodate the 1.485Gb/s data rate of payload header in order to accommodate the 1.485 Gbps data rate of
SMPTE 292M. SMPTE 292M.
4.2. Payload Header 4.2. Payload Header
Sequence Number (high bits): 16bits Sequence Number (high bits): 16bits
The high order bits for the 32bit RTP sequence counter. The high order bits for the 32bit RTP sequence counter.
Unused: 16bits Line No: 11bits
MUST be set to zero at the sender, and ignored at the receiver. The line number of the source data format, extracted from the
SMPTE 292M stream. The line number MUST correspond to the line
4.3. Payload Format number of the first 10bit word in the packet.
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 MUST 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 [11], for 10-bit words, each group of F: 1bit
four samples must be encoded into a 40-bit word (five octets) prior to Identifies field 1 and 2. F=1 identifies field 2 and F=0 identifies
transmission. The following is a representation of a 720 sample packet field 1.
with 10-bit quantization:
0 1 2 3 V: 1bit
0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 If the first date sample in the packet is a blanking level, V=1,
+---------+---------+---------+---------+ otherwise V=0.
| 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 Z: 2bits
byte order, that is, left-to-right as shown. Set to zero at sender. Ignored at receiver.
5. RTCP Considerations 5. RTCP Considerations
RFC1889 recommends transmission of RTCP packets every 5 seconds or at a RFC1889 recommends transmission of RTCP packets every 5 seconds or at a
reduced minimum in seconds of 360 divided by the session bandwidth in reduced minimum in seconds of 360 divided by the session bandwidth in
kilobits/seconds. At 1.485Gb/s the reduced minimum interval computes to kilobits/seconds. At 1.485 Gbps the reduced minimum interval computes to
0.2ms or 4028 packets per second. 0.2ms or 4028 packets per second.
It should be noted that the sender's octet count in SR packets wraps 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 around in 23 seconds, and that the cumulative number of packets lost
wraps around in 93 seconds. This means these two fields cannot wraps around in 93 seconds. This means these two fields cannot
accurately represent octet count and number of packets lost since the accurately represent octet count and number of packets lost since the
beginning of transmission, as defined in RFC1889. Therefore for network beginning of transmission, as defined in RFC1889. Therefore for network
monitoring purposes other means of keeping track of these variables monitoring purposes other means of keeping track of these variables
should be used. should be used.
6. MIME Registration 6. IANA Considerations
This document defines a new RTP payload name and associated MIME type, This document defines a new RTP payload format and associated MIME type,
SMPTE292M. The registration forms for MIME type for SMPTE 292M video is SMPTE292M. The MIME registration forms for SMPTE 292M video is enclosed
enclosed below: below:
MIME media type name: video MIME media type name: video
MIME subtype name: SMPTE292M MIME subtype name: SMPTE292M
Required parameters: None Required parameters: rate
The RTP timestamp clock rate. The clock runs at either 148500 Hz or
148500/1.001 Hz. If the latter rate is used a timestamp of 148351
MUST be used, and receivers MUST interpret this as 148500/1.001 Hz.
Optional parameters: None Optional parameters: length
The RECOMMENDED packet size in octets.
Encoding considerations: SMPTE292M video can be transmitted with Encoding considerations: SMPTE292M video can be transmitted with
RTP as specified in "draft-ietf-avt-smpte292-video-03". RTP as specified in "draft-ietf-avt-smpte292-video-04".
Security considerations: None Security considerations: see draft "draft-ietf-avt-smpte292-video-04"
section 8.
Interoperability considerations: NONE Interoperability considerations: NONE
Published specification: SMPTE292M Published specification: SMPTE292M
draft-ietf-avt-smpte292-video-03 draft-ietf-avt-smpte292-video-04
Applications which use this media type: Applications which use this media type:
Video communication. Video communication.
Additional information: None Additional information: None
Magic number(s): None Magic number(s): None
File extension(s): DV File extension(s):
Macintosh File Type Code(s): None Macintosh File Type Code(s): None
Person & email address to contact for further information: Person & email address to contact for further information:
Ladan Gharai <ladan@isi.edu> Ladan Gharai <ladan@isi.edu>
IETF AVT working group.
Intended usage: COMMON Intended usage: COMMON
Author/Change controller: Author/Change controller:
Ladan Gharai <ladan@isi.edu> Ladan Gharai <ladan@isi.edu>
7. Mapping to SDP Parameters 7. Mapping to SDP Parameters
Parameters are mapped to SDP [12] as follows: Parameters are mapped to SDP [12] as follows:
m=video 30000 RTP/AVP 111 m=video 30000 RTP/AVP 111
a=rtpmap:111 SMPTE292M/10000000 a=rtpmap:111 SMPTE292M/148500
a=fmtp:111 length=560 a=fmtp:111 length=560
In this example, a dynamic payload type 111 is assumed for SMPTE292M. In this example, a dynamic payload type 111 is used for SMPTE292M. The
The length field indicates the number of video samples in each packet, length field indicates the number of video samples in each packet, 560,
560, which means the payload length is 1400bytes. which means the payload length is 1400bytes.
8. Security Considerations 8. Security Considerations
RTP packets using the payload format defined in this specification are RTP packets using the payload format defined in this specification are
subject to the security considerations discussed in the RTP subject to the security considerations discussed in the RTP
specification, and any appropriate RTP profile. This implies that specification, and any appropriate RTP profile. This implies that
confidentiality of the media streams is achieved by encryption. confidentiality of the media streams is achieved by encryption.
This payload type does not exhibit any significant non-uniformity in the This payload type does not exhibit any significant non-uniformity in the
receiver side computational complexity for packet processing to cause a receiver side computational complexity for packet processing to cause a
potential denial-of-service threat. potential denial-of-service threat.
It is perhaps to be noted that the bandwidth of this payload is high 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 enough (1.485 Gbps without the RTP overhead) to cause potential for
denial-of-service if transmitted onto most currently available Internet denial-of-service if transmitted onto most currently available Internet
paths. In the absence from the standards track of a suitable congestion 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 control mechanism for flows of this sort, use of the payload should be
narrowly limited to suitably connected network endpoints and great care narrowly limited to suitably connected network endpoints and great care
taken with the scope of multicast transmissions. This potential threat taken with the scope of multicast transmissions. This potential threat
is common to all high bit rate applications. is common to all high bit rate applications without congestion control.
9. IANA Considerations
See section 6.
10. Full Copyright Statement 9. Full Copyright Statement
Copyright (C) The Internet Society (2000). All Rights Reserved. Copyright (C) The Internet Society (2002). All Rights Reserved.
This document and translations of it may be copied and furnished to This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it or others, and derivative works that comment on or otherwise explain it or
assist in its implementation may be prepared, copied, published and assist in its implementation may be prepared, copied, published and
distributed, in whole or in part, without restriction of any kind, distributed, in whole or in part, without restriction of any kind,
provided that the above copyright notice and this paragraph are included provided that the above copyright notice and this paragraph are included
on all such copies and derivative works. on all such copies and derivative works.
However, this document itself may not be modified in any way, such as by 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 removing the copyright notice or references to the Internet Soci- ety or
skipping to change at page 8, line 22 skipping to change at page 7, line 39
The limited permissions granted above are perpetual and will not be The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns. revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an "AS This document and the information contained herein is provided on an "AS
IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK
FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL 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 INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MER- CHANTABILITY OR
FITNESS FOR A PARTICULAR PURPOSE." FITNESS FOR A PARTICULAR PURPOSE."
11. Authors' Addresses 10. Authors' Addresses
Ladan Gharai Ladan Gharai
ladan@isi.edu ladan@isi.edu
USC/ISI USC/ISI
4350 Fairfax Dr 3811 Fairfax Dr
Arlington, VA 22203-1695 Arlington, VA 22203-1695
Gary Goncher Gary Goncher
ggoncher@tek.com ggoncher@tek.com
Colin Perkins Colin Perkins
csp@isi.edu csp@isi.edu
USC/ISI USC/ISI
4350 Fairfax Dr 3811 Fairfax Dr
Arlington, VA 22203-1695 Arlington, VA 22203-1695
David Richardson
drr@u.washington.edu
Allison Mankin Allison Mankin
mankin@isi.edu mankin@isi.edu
USC/ISI USC/ISI
4350 Fairfax Dr 3811 Fairfax Dr
Arlington, VA 22203-1695 Arlington, VA 22203-1695
12. Bibliography 11. Bibliography
[1] Society of Motion Picture and Television Engineers, [1] Society of Motion Picture and Television Engineers,
Bit-Serial Digital Interface for High-Definition Television Bit-Serial Digital Interface for High-Definition Television
Systems, SMPTE 292M, 1998. Systems, SMPTE 292M, 1998.
[2] Society of Motion Picture and Television Engineers, [2] Society of Motion Picture and Television Engineers,
Digital Representation and Bit-Parallel Interface - 1125/60 Digital Representation and Bit-Parallel Interface - 1125/60
High-Definition Production System, SMPTE 260M, 1992. High-Definition Production System, SMPTE 260M, 1992.
[3] Society of Motion Picture and Television Engineers, [3] Society of Motion Picture and Television Engineers,
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/