RFC 3803

Content Duration MIME Header Definition

πŸ“… published June 2004, from ietf

RFC 3803: Content Duration MIME Header Definition πŸŽ€

okay bestie, let's get into it ✨ this is RFC 3803, a Standards Track doc from the IETF, written by Gregory M. Vaudreuil (Lucent Technologies) and Glenn W. Parsons (Nortel Networks) back in June 2004 🌸. It obsoletes RFC 2424 and doesn't update anything else 🫢

Status is Standards Track, which means it's an actual Internet standards protocol πŸ’… and the IETF wants discussion and suggestions for improvements. The current state of it lives in STD 1 ("Internet Official Protocol Standards") πŸ“œ. Distribution is unlimited, so share away πŸ¦‹

Copyright belongs to The Internet Society (2004) πŸ’œ

Abstract ✨

This doc describes the MIME header Content-Duration, which is meant for any time varying media content (usually audio/* or video/*) 🎧

1. Introduction 🌈

okay so this is the main idea πŸ’– Content-Duration is a MIME header for time-based media, and the length of time is written in seconds with no units attached, just a bare number πŸ”’ this doc also obsoletes RFC 2424 πŸ™ˆ

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 [REQ]. πŸ“– the RFC 2119 words are the ones with the big requirement energy, so pay attention to them πŸ‘‘

2. Content-Duration Header Field πŸŽ€

Time varying media, like a spoken voice message or a video clip, has an inherent duration ⏱️ a lot of audio and video encodings already carry their duration in the header info, or can work it out from the byte length of the data πŸ€“ but sometimes you want the duration sitting right there in a MIME header so you can grab it without touching the actual content 🧚

2.1. Syntax πŸ’…

The Content-Duration value is a single number giving the duration in seconds. Formally:

duration := "Content-Duration" ":" 1*10DIGIT

Practically (though highly unlikely in MIME media), the upper bound on the number is (2^^31 -1), which is 2147483647 πŸ”₯

2.2. Semantics πŸ¦‹

This field is the duration of the attached time varying media πŸ’œ it's in seconds with no units tag. The value should be exact, but you can't know the exact value without opening the content and playing it ngl πŸ’€ if you need an exact value, do the latter method. This mechanism just lets the sender drop a duration into the header for easy access ✨

There are a bunch of ways to show this to the recipient (like inbox headers, or when the audio attachment is opened), but what the receiver actually does with the field is a local implementation issue 🌸

2.3. Example πŸ“

In this example, the content duration is 33 seconds:

      Content-Duration: 33

3. VPIM Usage 🫢

The Content-Duration header field for the audio/32KADPCM sub-type is a really useful piece of the VPIM specification [VPIM2] 🎧 all VPIM Messages MUST contain this sub-type to carry the audio of a voice message 🚨 it can also help when you're viewing on a simple MIME or non-MIME desktop, since you get the duration without opening the audio 🌈

4. Security Considerations πŸ’€

⚠️ this section is serious, bestie, so read it carefully πŸ™ˆ

This definition adds the option of explicitly stating the time duration of an audio/* or video/* content outside of the binary data that makes up the content πŸ” in some environments (though probably not most of them), putting the actual time duration in a header field may be a security issue, so it should not be noted in those cases 🚫 relying on the time in this header can't be trusted for working out the exact size of the data πŸ’” the exact length of the data must be determined by examining the data itself πŸ”

5. References πŸ“š

5.1. Normative References πŸ‘‘

[MIME2] Gellens, R., "The Text/Plain Format Parameter", RFC 2646, August 1999.

[VPIM2R2] Vaudreuil, G., and G. Parsons, "Voice Profile for Internet Mail - version 2 (VPIMv2)", RFC 3801, June 2004.

[REQ] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

5.2. Informative References 🧚

[DUR] Parsons, G. and G. Vaudreuil, "Content Duration MIME Header Definition", RFC 2424, September 1998.

[VPIM2] Vaudreuil, G. and G. Parsons, "Voice Profile for Internet Mail - version 2", RFC 2421, September 1998.

6. Changes from RFC 2424 πŸ¦‹

only editorial and boilerplate changes from RFC 2424 were made here, so no real technical changes πŸ™Œ

7. Authors' Addresses πŸ’Œ

Gregory M. Vaudreuil Lucent Technologies 7291 Williamson Rd Dallas, TX 75214 United States

EMail: gregv@ieee.org

Glenn W. Parsons Nortel Networks P.O. Box 3511, Station C Ottawa, ON K1Y 4H7 Canada

Phone: +1-613-763-7582 Fax: +1-613-763-2697 EMail: gparsons@nortelnetworks.com

Copyright (C) The Internet Society (2004). 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 currently provided by the Internet Society.

πŸ“¦ where this page comes from