Network Working Group K. Kobayashi Internet-Draft AIST Obsoletes: 3189 (if approved) K. Mishima Intended status: Standards Track Keio University Expires: September 24, 2009 S. Casner Packet Design C. Bormann Universitaet Bremen TZI March 23, 2009 RTP Payload Format for DV (IEC 61834) Video draft-ietf-avt-rfc3189bis-03 Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English. 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. This Internet-Draft will expire on September 24, 2009. Copyright Notice Kobayashi, et al. Expires September 24, 2009 [Page 1] Internet-Draft RTP Payload Format for DV Video March 2009 Copyright (c) 2009 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents in effect on the date of publication of this document (http://trustee.ietf.org/license-info). Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Abstract This document specifies the packetization scheme for encapsulating the compressed digital video data streams commonly known as "DV" into a payload format for the Real-Time Transport Protocol (RTP). This document Obsoletes RFC 3189. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Termiology . . . . . . . . . . . . . . . . . . . . . . . . 4 2. DV format encoding . . . . . . . . . . . . . . . . . . . . . . 4 2.1. RTP header usage . . . . . . . . . . . . . . . . . . . . . 4 2.2. DV data encapsulation into RTP payload . . . . . . . . . . 5 3. Mapping to SDP Parameters . . . . . . . . . . . . . . . . . . 7 3.1. Offer-Answer Model Considerations . . . . . . . . . . . . 9 3.2. Example of SDP description . . . . . . . . . . . . . . . . 9 3.2.1. SDP description for unbundled streams . . . . . . . . 9 3.2.2. SDP description for bundled streams . . . . . . . . . 10 4. Security Considerations . . . . . . . . . . . . . . . . . . . 11 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 5.1. DV video Media Type registration form . . . . . . . . . . 11 5.2. DV audio Media Type registration form . . . . . . . . . . 13 6. Major Changes from RFC 3189 . . . . . . . . . . . . . . . . . 14 7. Interoperability with previous implementations . . . . . . . . 15 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 15 8.1. Normative References . . . . . . . . . . . . . . . . . . . 15 8.2. Informative References . . . . . . . . . . . . . . . . . . 16 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 17 Kobayashi, et al. Expires September 24, 2009 [Page 2] Internet-Draft RTP Payload Format for DV Video March 2009 1. Introduction This document specifies payload formats for encapsulating both consumer- and professional-use DV format data streams into the Real- time Transport Protocol (RTP), version 2 [RFC3550]. DV compression audio and video formats were designed for a recording format on helical- scan magnetic tape media. The DV standards for consumer- market devices, the IEC 61883 and 61834 series, cover many aspects of consumer-use digital video, including mechanical specifications of a cassette, magnetic recording format, error correction on the magnetic tape, DCT video encoding format, and audio encoding format [IEC61834]. The digital interface part of IEC 61883 defines an interface on IEEE 1394 system [IEC61883][IEEE1394]. This specification set supports several video formats: SD-VCR (Standard Definition), HD-VCR (High Definition), SDL- VCR (Standard Definition - Long), PALPlus, DVB (Digital Video Broadcast) and ATV (Advanced Television). North American formats are indicated with a number of lines and "/60", while European formats use "/50". DV standards extended for professional-use were published by SMPTE as 314M and 370M, for different sampling systems, higher color resolution, and higher bit rates [SMPTE314M][SMPTE370M]. There are two kinds of DV, one for consumer use and the other for professional. The original "DV" specification designed for consumer- use digital VCRs is approved as the IEC 61834 standard set. The specifications for professional DV are published as SMPTE 314M and 370M. Both encoding formats are based on consumer DV and used in SMPTE D-7, D-9, and D-12 video systems. The RTP payload format specified in this document supports IEC 61834 consumer DV and professional SMPTE 314M and 370M (DV-Based) formats. IEC 61834 also includes magnetic tape recording for digital TV broadcasting systems (such as DVB and ATV) that use MPEG2 encoding. The payload format for encapsulating MPEG2 into RTP has already been defined in RFC 2250 [RFC2250] and others. Consequently, the payload specified in this document will support six video formats of the IEC standard: SD-VCR (525/60, 625/50), HD-VCR (1125/60, 1250/50) and SDL-VCR (525/60, 625/50), and seven of the SMPTE standards: 314M 25Mbps (525/60, 625/50), 314M 50Mbps (525/60, 625/50), and 370M 100Mbps (1080/60i, 1080/50i, 720/60p, and 720/50p). In the future it can be extended into other video formats managed by 80 byte DV DIF block. Throughout this specification, we make extensive use of the terminology of IEC and SMPTE standards. The reader should consult the original references for definitions of these terms. Kobayashi, et al. Expires September 24, 2009 [Page 3] Internet-Draft RTP Payload Format for DV Video March 2009 1.1. Termiology 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 [RFC2119]. 2. DV format encoding The DV format only uses the DCT compression technique within each frame, contrasted with the interframe compression of the MPEG video standards [ISO/IEC11172][ISO/IEC13818]. All video data, including audio and other system data, are managed within the picture frame unit of video. The DV video encoding is composed of a three-level hierarchical structure, i.e., DCT super block, DCT macro block, and DCT block. A picture frame is divided into rectangle- or clipped- rectangle-shaped DCT super blocks. DCT super blocks are divided into 27 rectangle- or square-shaped DCT macro blocks, and each DCT macro block consists of a number of DCT blocks. Each DCT block represents rectangle region for each color, Y, Cb, and Cr, and DCT block consists of 8x8 pixels. Audio data is encoded with PCM format. The sampling frequency is 32 kHz, 44.1 kHz or 48 kHz and the quantization is 12-bit non-linear, 16-bit linear or 20-bit linear. The number of channels may be up to 8. Only certain combinations of these parameters are allowed depending upon the video format; the restrictions are specified in each document. A frame of data in the DV format stream is divided into several "DIF sequences". A DIF sequence is composed of an integral number of 80- byte DIF blocks. A DIF block is the primitive unit for all treatment of DV streams. Each DIF block contains a 3-byte ID header that specifies the type of the DIF block and its position in the DIF sequence. Five types of DIF blocks are defined: DIF sequence header, Subcode, Video Auxiliary information (VAUX), Audio, and Video. Audio DIF blocks are composed of 5 bytes of Audio Auxiliary data (AAUX) and 72 bytes of audio data. Each RTP packet starts with the RTP header as defined in RFC 3550 [RFC3550]. No additional payload-format-specific header is required for this payload format. 2.1. RTP header usage The RTP header fields that have a meaning specific to the DV format are described as follows: Kobayashi, et al. Expires September 24, 2009 [Page 4] Internet-Draft RTP Payload Format for DV Video March 2009 Payload type (PT): The payload type is dynamically assigned by means outside the scope of this document. If multiple DV encoding formats are to be used within one RTP session, then multiple dynamic payload types MUST be assigned, one for each DV encoding format. The sender MUST change to the corresponding payload type whenever the encoding format is changed. Timestamp: 32-bit 90 kHz timestamp representing the time at which the first data in the frame was sampled. All RTP packets within the same video frame MUST have the same timestamp. The timestamp SHOULD increment by a multiple of the nominal interval for one DV frame time, as given in the following table: +----------+----------------+---------------------------------------+ | Mode | Frame rate | Increase of one DV frame in 90kHz | | | (Hz) | timestamp | +----------+----------------+---------------------------------------+ | 525-60 | 29.97 | 3003 | | 625-50 | 25 | 3600 | | 1125-60 | 30 | 3000 | | 1250-50 | 25 | 3600 | | 1080-60i | 29.97 | 3003 | | 1080-50i | 25 | 3600 | | 720-60p | 59.94 | 3003(*) | | 720-50p | 50 | 3600(*) | +----------+----------------+---------------------------------------+ Note that even in 720-line DV system, the data in two video frame shall be processed within one DV frame duration of 1080-line system. Audio data and subcode data in 720-line system are processed in the same way as the 1080-line system. Therefore in 720-line system, the increase of one DV frame corresponds two video frames time. Marker bit (M): The marker bit of the RTP fixed header is set to one on the last packet of a video frame, and otherwise, must be zero. The M bit allows the receiver to know that it has received the last packet of a frame so it can display the image without waiting for the first packet of the next frame to arrive to detect the frame change. However, detection of a frame change MUST NOT rely on the marker bit since the last packet of the frame might be lost. Detection of a frame change MUST be based on a difference in the RTP timestamp. 2.2. DV data encapsulation into RTP payload Integral DIF blocks are placed into the RTP payload beginning immediately after the RTP header. Any number of DIF blocks may be packed into one RTP packet, except that all DIF blocks in one RTP packet MUST be from the same video frame. DIF blocks from the next Kobayashi, et al. Expires September 24, 2009 [Page 5] Internet-Draft RTP Payload Format for DV Video March 2009 video frame MUST NOT be packed into the same RTP packet even if more payload space remains. This requirement stems from the fact that the transition from one video frame to the next is indicated by a change in the RTP timestamp. It also reduces the processing complexity on the receiver. Since the RTP payload contains an integral number of DIF blocks, the length of the RTP payload will be a multiple of 80 bytes. Audio and video data may be transmitted as one bundled RTP stream or in separate RTP streams (unbundled). The choice MUST be indicated as part of the assignment of the dynamic payload type and MUST remain unchanged for the duration of the RTP session to avoid complicated procedures of sequence number synchronization. The RTP sender could omit DIF-sequence header and subcode DIF blocks from a stream, in the case of the information either is known out-of-band or is not be required for the application. Note that time code in DIF blocks is mandatory for professional video applications. When sending DIF- sequence header and subcode DIF blocks with unbundled audio and video streams, both types of blocks MUST be included in the video stream. DV streams include "source" and "source control" packs that carry information indispensable for proper decoding, such as video signal type, frame rate, aspect ratio, picture position, quantization of audio sampling, number of audio samples in a frame, number of audio channels, audio channel assignment, and language of the audio. However, describing all of these attributes with a signaling protocol would require large descriptions to enumerate all the combinations. Therefore, no Session Description Protocol (SDP) [RFC4566] parameters for these attributes are defined in this document. Instead, the RTP sender MUST transmit at least those VAUX DIF blocks and/or audio DIF blocks with AAUX information bytes that include "source" and "source control" packs containing the indispensable information for decoding. In the case of one bundled stream, DIF blocks for both audio and video are packed into RTP packets in the same order as they were encoded. In the case of an unbundled stream, only the header, subcode, video and VAUX DIF blocks are sent within the video stream. Audio is sent in a different stream if desired, using a different RTP payload type. It is also possible to send audio duplicated in a separate stream, in addition to bundling it in with the video stream. When using unbundled mode, it is RECOMMENDED that the audio stream data be extracted from the DIF blocks and repackaged into the corresponding RTP payload format for the audio encoding (DAT12, L16, L20) [RFC3551][RFC3190] in order to maximize interoperability with non-DV- capable receivers while maintaining the original source Kobayashi, et al. Expires September 24, 2009 [Page 6] Internet-Draft RTP Payload Format for DV Video March 2009 quality. In the case of unbundled transmission where both audio and video are sent in the DV format, the same timestamp SHOULD be used for both audio and video data within the same frame to simplify the lip synchronization effort on the receiver. Lip synchronization may also be achieved using reference timestamps passed in RTCP as described in RFC 3550. The sender MAY reduce the video frame rate by discarding the video data and VAUX DIF blocks for some of the video frames. The RTP timestamp MUST still be incremented to account for the discarded frames. The sender MAY alternatively reduce bandwidth by discarding video data DIF blocks for portions of the image which are unchanged from the previous image. To enable this bandwidth reduction, receivers SHOULD implement an error concealment strategy to accommodate lost or missing DIF blocks, e.g., repeating the corresponding DIF block from the previous image. 3. Mapping to SDP Parameters The information carried in the media type specification has a specific mapping to fields in the Session Description Protocol (SDP), which is commonly used to describe RTP sessions. When SDP is used to specify sessions employing the G.729.1 codec, the mapping is as follows: o The media type ("video") goes in SDP "m=" as the media name. o The media subtype ("DV") goes in SDP "a=rtpmap" as the encoding name. The RTP clock rate in "a=rtpmap" MUST be 90000 which for the payload format defined in this document is a 90kHz clock. o Any remaining parameters go in the SDP "a=fmtp" attribute by copying them directly from the media type string as a semicolon separated list of parameter=value pairs. Note that the examples in RFC3189 (older version of this document) are incorrect on the SDP "a=fmtp" attribute describing. In the DV video payload format, the a=fmtp line will be used to show the encoding type within the DV video and will be used as below: a=fmtp: encode= The required parameter specifies which type of DV format is used. The DV format name will be one of the following: Kobayashi, et al. Expires September 24, 2009 [Page 7] Internet-Draft RTP Payload Format for DV Video March 2009 SD-VCR/525-60 SD-VCR/625-50 HD-VCR/1125-60 HD-VCR/1250-50 SDL-VCR/525-60 SDL-VCR/625-50 314M-25/525-60 314M-25/625-50 314M-50/525-60 314M-50/625-50 370M/1080-60i 370M/1080-50i 370M/720-60p 370M/720-50p 306M/525-60 (for backward compatibility) 306M/625-50 (for backward compatibility) In order to show whether the audio data is bundled into the DV stream or not, a format specific parameter is defined as below: a=fmtp: audio=