RFC 4421

RTP Payload Format for Uncompressed Video: Additional Colour Sampling Modes

πŸ“… published February 2006, from ietf

RFC 4421: RTP Payload Format for Uncompressed Video: Additional Colour Sampling Modes πŸŽ€

okay bestie, let's get the title block sorted first πŸ’…

  • Request for Comments: 4421
  • Network Working Group
  • Author: Colin (C.) Perkins, University of Glasgow
  • Date: February 2006
  • Category: Standards Track
  • Updates: RFC 4175 (no Obsoletes listed) ✨

Status of This Memo

okay so this one is an Internet standards track protocol doc for the Internet community, and it's basically asking for discussion and suggestions for improvements 🫢 To check where this protocol stands, look at the current edition of the "Internet Official Protocol Standards" (STD 1). Distribution of this memo is unlimited, so share it with everyone πŸ’–

Copyright (C) The Internet Society (2006). 🌸

Abstract

so RFC 4175, The RFC Payload Format for Uncompressed Video, is the one that defines how to packetise uncompressed, studio-quality video streams so they can go over RTP. this memo extends that format to support additional colour sampling modes ✨

1. Introduction πŸ¦‹

the RTP Payload Format for Uncompressed Video [1] is the doc that sets up how to packetise uncompressed, studio-quality video streams for transport using RTP [2]. it's giving versatility bc a range of standard and high-definition video formats is supported, and parameters let the sender and receiver negotiate the image size, colour space, pixel depth, and colour sampling mode πŸ”₯

the catch (and it's a whole limitation, ngl) is that the signalling assumes the number of bits per sample is the same for each colour component. for example, you can signal video using RGB colour sampling with 8 bits for each of the Red, Green, and Blue components (24 bits per pixel). but you can't signal RGB colour sampling with 5 bits each for Red and Blue and 6 bits for Green (16 bits per pixel) 😭 those formats can totally be transported by the payload format, they just can't be signalled with the parameters that already exist. so this memo extends [1] with additional colour sampling modes to signal those formats πŸ’…

2. Conventions Used in this Document 🧚

okay this is the important bit, so pay attention πŸ’œ 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] ✨

3. Payload Format Parameters πŸ“

so this memo defines six new colour sampling modes that MAY be signalled for use with [1]. the new modes are "RGB+", "RG+B", "R+GB", "BGR+", "BG+R", and "B+GR" 🌈 they use the same packing order of samples as the RGB and BGR colour sampling modes respectively (Section 4.3 of [1]), with one exception: an additional bit per sample of colour depth MUST be used for the component marked by the + symbol. the mandatory parameter "depth=N" means N bits per sample are used by the unmarked components, but N+1 bits are used by the marked component. all other features of the payload format are as defined in [1] πŸ’–

the main reason for these modes is to pack data efficiently into small pixel groups ("pgroups"). the most common use case is expected to be video with "depth=5", where that extra bit for the marked component lets a single pixel fit into two octets without padding πŸŽ€ the new colour sampling modes MAY be used for other depths too, should that prove useful ✨

4. Example πŸ“Ό

a super common uncompressed video format is RGB with 5 bits for Red and Blue and 6 bits for Green, for a total of 16 bits per pixel. using the sampling modes defined in this memo, you can signal it in Session Description Protocol (SDP) like this 🫢

    v=0
    o=jdoe 2890844526 2890842807 IN IP4 192.0.2.5
    s=-
    c=IN IP4 192.0.2.6
    t=2873397496 2873404696
    m=video 51372 RTP/AVP 99
    a=rtpmap:99 raw/90000
    a=fmtp:99 sampling=RG+B; width=1024; height=768; depth=5;
      colorimetry=SMPTE240M

the last line got wrapped bc of this memo's formatting limits, but in the actual SDP file it's one complete line πŸ™ˆ

5. Security Considerations πŸ”₯

the security considerations of [1] apply. no additional security considerations are introduced by support for the new colour sampling modes πŸ’…

6. IANA Considerations 🧚

the video/raw media type gets six new values for the "sampling" parameter, following the rules in Section 6.2 of [1]. the new values are "RGB+", "RG+B", "R+GB", "BGR+", "BG+R", and "B+GR", as described in this memo πŸ‘‘

7. Acknowledgements 🫢

thanks to Jeremy Searle and Andrew Lee at Westland Helicopters πŸ’œ

8. Normative References πŸ“š

  • [1] Gharai, L. and C. Perkins, "RTP Payload Format for Uncompressed Video", RFC 4175, September 2005.
  • [2] Schulzrinne, H., Casner, S., Frederick, R., and V. Jacobson, "RTP: A Transport Protocol for Real-Time Applications", STD 64, RFC 3550, July 2003.
  • [3] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

Author's Address πŸ¦‹

Colin Perkins University of Glasgow Department of Computing Science 17 Lilybank Gardens Glasgow G12 8QQ UK

EMail: csp@csperkins.org

Copyright (C) The Internet Society (2006).

this document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.

this document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM 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 MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property βš–οΈ

the IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document, or the extent to which any license under such rights might or might not be available. nor does it represent that it has made any independent effort to identify any such rights. information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.

copies of IPR disclosures made to the IETF Secretariat, and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification, can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.

the IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. please address the information to the IETF at ietf-ipr@ietf.org.

Acknowledgement πŸ’–

funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA). ✨

πŸ“¦ where this page comes from