<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.17 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-deping-avtcore-video-bframe-01" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.15.3 -->
  <front>
    <title abbrev="VBF">Video BFrame RTP Header Extension</title>
    <seriesInfo name="Internet-Draft" value="draft-deping-avtcore-video-bframe-01"/>
    <author initials="D." surname="Li" fullname="Deping li">
      <organization>ByteDance</organization>
      <address>
        <email>webrtc@bytedance.com</email>
      </address>
    </author>
    <date year="2023" month="January" day="12"/>
    <area>ART</area>
    <workgroup>avtcore</workgroup>
    <keyword>RTP,Webrtc,BFrame,Video</keyword>
    <abstract>
      <t>This document describes an RTP header extension used to convey decoding time information about video when Bi-directional predicted frames exist, It adds CompositionTime(CTS) as value so that receiver can decode video with correct sequence.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>As video codec, H264/HEVC is widely used in RTP base system, Those codec support I-Frame, B-Frame, and P-frame, Most RTP systems do not support B-Frame, while B-Frame is widely used in streaming systems, with the rapid deploy of Real Time Communication(RTC) in low  latency streaming scenario, support for Bi-directional predicted frames in RTP base system are necessary.</t>
      <t>Video streams contain a lot of details, including timestamps, so a decoder knows how to handle the content properly. The DTS(DecodingTimeStamp) decides  when a frame has to be decoded, while the PTS(PresentationTimeStamp) describes when a frame has to be presented.This difference becomes important when using B-frames, which are frames that can have references to frames in the past, but also to frames in the future. Given that, there will be frames in the  future, which a decoder needs to decode first in order to use them as reference. 
Therefore, decoder needs DTS when B-frames exist, while, the RTP timestamp reflects the presentation time(PTS) only. This document specifies an RTP extension header that allows video rtp senders deliver CTS(CompositionTime) to rtp receiver .</t>
      <t>The CTS value is PTS  minus DTS. Therefore , the rtp receiver gets DTS value via RTP timestamp adding CTS value.</t>
      <t>This new header extension uses the general mechanism for RTP header extensions as described in (<xref target="RFC5285"/>)]. Rtp sender only needs to add CTS to the first rtp packet when the video frame contains several packets, which reduces overhead.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <ul spacing="normal">
        <li>RTP: Real-time Transport Protocol (RFC 3550)</li>
        <li>RTCP: RTP Control Protocol (RFC 3550)</li>
        <li>RTCP RR: RTCP Receiver Report</li>
        <li>RTCP SR:  RTCP Sender Report</li>
        <li>SDP: Session Description Protocol (RFC 4566)</li>
        <li>Clock Rate: The multiplier used to convert from a wallclock value
                in seconds to an equivalent RTP timestamp value
                (without the fixed random offset).  Note that RFC 3550
                uses various terms like "clock frequency", "media
                clock rate", "timestamp unit", "timestamp frequency",
                and "RTP timestamp clock rate" as synonymous to clock
                rate.</li>
        <li>RTP Sender: A logical network element that sends RTP packets,
                sends RTCP SR packets, and receives RTCP reception
                report blocks.</li>
        <li>RTP Receiver: A logical network element that receives RTP packets,
                receives RTCP SR packets, and sends RTCP reception
                report blocks.</li>
        <li>RTC: Real Time Communication</li>
        <li>PTS: Video Presentation TimeStamp</li>
        <li>DTS: Video Decoding TimeStamp</li>
        <li>CTS: Video CompositionTime</li>
      </ul>
    </section>
    <section anchor="rtp-header-extension-format">
      <name>RTP header extension format</name>
      <t>The general RTP payload format follows the RTP header format (<xref target="RFC3550"/>) and generic RTP header extensions (<xref target="RFC8285"/>), RTP header extension <bcp14>MAY</bcp14> encoded using the one-byte header or two-byte header as described in (<xref target="RFC8285"/>). The two-byte header format is used as an 
example in this memo.</t>
      <t>The following RTP header extension is <bcp14>RECOMMENDED</bcp14>. The ID is assigned per (<xref target="RFC8285"/>), and format is shown below.</t>
      <figure>
        <name>extension format</name>
        <artwork><![CDATA[
 0                   1                   2                  
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ID | Len=2 |              cts              |  
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
      </figure>
      <t>ID: extension id.</t>
      <t>cts: PTS minus DTS and divide by 90 (Video Clock Rate)</t>
      <section anchor="video-rtp-sender">
        <name>Video rtp sender</name>
        <t>The video sender here <bcp14>MAY</bcp14> be video client or middle box perform RTP switch.
Video client <bcp14>MAY</bcp14> encode video with B-frame, it <bcp14>SHOULD</bcp14> add this rtp header extension 
in the rtp packetization module. Only adding in the first rtp packet is <bcp14>RECOMMENDED</bcp14> 
when the video frame contains multiple rtp packets, which will reduce overhead.
The middle box <bcp14>MAY</bcp14> perform  RTMP or other streaming video protocols translate to 
rtp streams work, it <bcp14>SHOULD</bcp14> add this header extension when streaming video contains B-frame.</t>
      </section>
      <section anchor="video-rtp-receiver">
        <name>Video rtp receiver</name>
        <t>The video rtp receiver here is a client which decodes video, It <bcp14>SHOULD</bcp14> extract cts value when this extension exists, 
and calculate DTS value with rtp timestamp(PTS) and CTS.</t>
        <artwork><![CDATA[
DTS = PTS - CTS * 90
]]></artwork>
        <t>90 is video clock rate, Video receiver construction frame and put to jitter buffer, decoder <bcp14>MUST</bcp14> decode frame by DTS sequence, and video render module <bcp14>MUST</bcp14> render the decoded frame with PTS sequence, which come from rtp timestamp.</t>
      </section>
      <section anchor="usage-considerations">
        <name>Usage considerations</name>
        <t>In practice, when receiver that  decode video does not support B-frame, 
In order to successfully decode an incoming video stream, it is <bcp14>RECOMMENDED</bcp14> 
An RTP middle box discard B-frame when video rtp sender contains B-frame, 
the decoder at the Endpoint <bcp14>SHOULD</bcp14> add whether it support video B-frame capability 
in SDP payload format specific paramaters(a=fmtp), and follow the Offer/Answer procedure describe in  (<xref target="RFC8285"/>).</t>
      </section>
    </section>
    <section anchor="session-description-protocol-sdp-signaling">
      <name>Session Description Protocol (SDP) Signaling</name>
      <t>The URI for declaring this header extension in an extmap attribute is "urn:ietf:params:rtp-hdrext:CompositionTime". 
It does not contain any extension attributes, It follows the standard mechanism described in (<xref target="RFC8285"/>)
An example attribute line in SDP:</t>
      <artwork><![CDATA[
a=extmap:19 uri:ietf:rtc:rtp-hdrext:video:CompositionTime;
]]></artwork>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The security considerations of the RTP specification (<xref target="RFC3550"/>) and the general mechanism for RTP header extensions (<xref target="RFC8285"/>) apply. and all the security considerations of typologies (<xref target="RFC7667"/>) (<xref target="RFC7201"/>) for these two types
of RTP intermediaries are applicable to this header extension.</t>
      <t>Security considerations for SDP are described in the corresponding section in (<xref target="RFC8866"/>), In the Secure Real-time Transport Protocol (SRTP) (<xref target="RFC3711"/>), RTP header extensions are authenticated but not encrypted.  When this header extension is used, cts are therefore visible on a frame-by-frame basis to an attacker passively observing the video stream, In scenarios where this is a concern, additional mechanisms <bcp14>MUST</bcp14> be used to protect the confidentiality 
of the header extension.  This mechanism could be header extension encryption (<xref target="RFC6904"/>), or a lower-level security and authentication mechanism such as IPsec (<xref target="RFC4301"/>).</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>IANA has registered the following entry in the "RTP Compact Header
Extensions" registry:
Extension URI: uri:ietf:rtc:rtp-hdrext:video:CompositionTime
Description:  video B frame compositionTime
Contact: webrtc@bytedance.com</t>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
    </section>
  </middle>
  <back>
    <references>
      <name>Normative References</name>
      <reference anchor="RFC3550" target="https://www.rfc-editor.org/info/rfc3550">
        <front>
          <title>RTP: A Transport Protocol for Real-Time Applications</title>
          <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne">
            <organization/>
          </author>
          <author fullname="S. Casner" initials="S." surname="Casner">
            <organization/>
          </author>
          <author fullname="R. Frederick" initials="R." surname="Frederick">
            <organization/>
          </author>
          <author fullname="V. Jacobson" initials="V." surname="Jacobson">
            <organization/>
          </author>
          <date month="July" year="2003"/>
          <abstract>
            <t>This memorandum describes RTP, the real-time transport protocol.  RTP provides end-to-end network transport functions suitable for applications transmitting real-time data, such as audio, video or simulation data, over multicast or unicast network services.  RTP does not address resource reservation and does not guarantee quality-of- service for real-time services.  The data transport is augmented by a control protocol (RTCP) to allow monitoring of the data delivery in a manner scalable to large multicast networks, and to provide minimal control and identification functionality.  RTP and RTCP are designed to be independent of the underlying transport and network layers.  The protocol supports the use of RTP-level translators and mixers. Most of the text in this memorandum is identical to RFC 1889 which it obsoletes.  There are no changes in the packet formats on the wire, only changes to the rules and algorithms governing how the protocol is used. The biggest change is an enhancement to the scalable timer algorithm for calculating when to send RTCP packets in order to minimize transmission in excess of the intended rate when many participants join a session simultaneously.  [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="64"/>
        <seriesInfo name="RFC" value="3550"/>
        <seriesInfo name="DOI" value="10.17487/RFC3550"/>
      </reference>
      <reference anchor="RFC8285" target="https://www.rfc-editor.org/info/rfc8285">
        <front>
          <title>A General Mechanism for RTP Header Extensions</title>
          <author fullname="D. Singer" initials="D." surname="Singer">
            <organization/>
          </author>
          <author fullname="H. Desineni" initials="H." surname="Desineni">
            <organization/>
          </author>
          <author fullname="R. Even" initials="R." role="editor" surname="Even">
            <organization/>
          </author>
          <date month="October" year="2017"/>
          <abstract>
            <t>This document provides a general mechanism to use the header extension feature of RTP (the Real-time Transport Protocol).  It provides the option to use a small number of small extensions in each RTP packet, where the universe of possible extensions is large and registration is decentralized.  The actual extensions in use in a session are signaled in the setup information for that session.  This document obsoletes RFC 5285.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8285"/>
        <seriesInfo name="DOI" value="10.17487/RFC8285"/>
      </reference>
      <reference anchor="RFC5285" target="https://www.rfc-editor.org/info/rfc5285">
        <front>
          <title>A General Mechanism for RTP Header Extensions</title>
          <author fullname="D. Singer" initials="D." surname="Singer">
            <organization/>
          </author>
          <author fullname="H. Desineni" initials="H." surname="Desineni">
            <organization/>
          </author>
          <date month="July" year="2008"/>
          <abstract>
            <t>This document provides a general mechanism to use the header extension feature of RTP (the Real-Time Transport Protocol).  It provides the option to use a small number of small extensions in each RTP packet, where the universe of possible extensions is large and registration is de-centralized.  The actual extensions in use in a session are signaled in the setup information for that session.   [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5285"/>
        <seriesInfo name="DOI" value="10.17487/RFC5285"/>
      </reference>
      <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119">
        <front>
          <title>Key words for use in RFCs to Indicate Requirement Levels</title>
          <author fullname="S. Bradner" initials="S." surname="Bradner">
            <organization/>
          </author>
          <date month="March" year="1997"/>
          <abstract>
            <t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="2119"/>
        <seriesInfo name="DOI" value="10.17487/RFC2119"/>
      </reference>
      <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174">
        <front>
          <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
          <author fullname="B. Leiba" initials="B." surname="Leiba">
            <organization/>
          </author>
          <date month="May" year="2017"/>
          <abstract>
            <t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="8174"/>
        <seriesInfo name="DOI" value="10.17487/RFC8174"/>
      </reference>
      <reference anchor="RFC7667" target="https://www.rfc-editor.org/info/rfc7667">
        <front>
          <title>RTP Topologies</title>
          <author fullname="M. Westerlund" initials="M." surname="Westerlund">
            <organization/>
          </author>
          <author fullname="S. Wenger" initials="S." surname="Wenger">
            <organization/>
          </author>
          <date month="November" year="2015"/>
          <abstract>
            <t>This document discusses point-to-point and multi-endpoint topologies used in environments based on the Real-time Transport Protocol (RTP). In particular, centralized topologies commonly employed in the video conferencing industry are mapped to the RTP terminology.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7667"/>
        <seriesInfo name="DOI" value="10.17487/RFC7667"/>
      </reference>
      <reference anchor="RFC7201" target="https://www.rfc-editor.org/info/rfc7201">
        <front>
          <title>Options for Securing RTP Sessions</title>
          <author fullname="M. Westerlund" initials="M." surname="Westerlund">
            <organization/>
          </author>
          <author fullname="C. Perkins" initials="C." surname="Perkins">
            <organization/>
          </author>
          <date month="April" year="2014"/>
          <abstract>
            <t>The Real-time Transport Protocol (RTP) is used in a large number of different application domains and environments.  This heterogeneity implies that different security mechanisms are needed to provide services such as confidentiality, integrity, and source authentication of RTP and RTP Control Protocol (RTCP) packets suitable for the various environments.  The range of solutions makes it difficult for RTP-based application developers to pick the most suitable mechanism.  This document provides an overview of a number of security solutions for RTP and gives guidance for developers on how to choose the appropriate security mechanism.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7201"/>
        <seriesInfo name="DOI" value="10.17487/RFC7201"/>
      </reference>
      <reference anchor="RFC8866" target="https://www.rfc-editor.org/info/rfc8866">
        <front>
          <title>SDP: Session Description Protocol</title>
          <author fullname="A. Begen" initials="A." surname="Begen">
            <organization/>
          </author>
          <author fullname="P. Kyzivat" initials="P." surname="Kyzivat">
            <organization/>
          </author>
          <author fullname="C. Perkins" initials="C." surname="Perkins">
            <organization/>
          </author>
          <author fullname="M. Handley" initials="M." surname="Handley">
            <organization/>
          </author>
          <date month="January" year="2021"/>
          <abstract>
            <t>This memo defines the Session Description Protocol (SDP). SDP is intended for describing multimedia sessions for the purposes of session announcement, session invitation, and other forms of multimedia session initiation. This document obsoletes RFC 4566.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8866"/>
        <seriesInfo name="DOI" value="10.17487/RFC8866"/>
      </reference>
      <reference anchor="RFC3711" target="https://www.rfc-editor.org/info/rfc3711">
        <front>
          <title>The Secure Real-time Transport Protocol (SRTP)</title>
          <author fullname="M. Baugher" initials="M." surname="Baugher">
            <organization/>
          </author>
          <author fullname="D. McGrew" initials="D." surname="McGrew">
            <organization/>
          </author>
          <author fullname="M. Naslund" initials="M." surname="Naslund">
            <organization/>
          </author>
          <author fullname="E. Carrara" initials="E." surname="Carrara">
            <organization/>
          </author>
          <author fullname="K. Norrman" initials="K." surname="Norrman">
            <organization/>
          </author>
          <date month="March" year="2004"/>
          <abstract>
            <t>This document describes the Secure Real-time Transport Protocol (SRTP), a profile of the Real-time Transport Protocol (RTP), which can provide confidentiality, message authentication, and replay protection to the RTP traffic and to the control traffic for RTP, the Real-time Transport Control Protocol (RTCP).   [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="3711"/>
        <seriesInfo name="DOI" value="10.17487/RFC3711"/>
      </reference>
      <reference anchor="RFC6904" target="https://www.rfc-editor.org/info/rfc6904">
        <front>
          <title>Encryption of Header Extensions in the Secure Real-time Transport Protocol (SRTP)</title>
          <author fullname="J. Lennox" initials="J." surname="Lennox">
            <organization/>
          </author>
          <date month="April" year="2013"/>
          <abstract>
            <t>The Secure Real-time Transport Protocol (SRTP) provides authentication, but not encryption, of the headers of Real-time Transport Protocol (RTP) packets.  However, RTP header extensions may carry sensitive information for which participants in multimedia sessions want confidentiality.  This document provides a mechanism, extending the mechanisms of SRTP, to selectively encrypt RTP header extensions in SRTP.</t>
            <t>This document updates RFC 3711, the Secure Real-time Transport Protocol specification, to require that all future SRTP encryption transforms specify how RTP header extensions are to be encrypted.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6904"/>
        <seriesInfo name="DOI" value="10.17487/RFC6904"/>
      </reference>
      <reference anchor="RFC4301" target="https://www.rfc-editor.org/info/rfc4301">
        <front>
          <title>Security Architecture for the Internet Protocol</title>
          <author fullname="S. Kent" initials="S." surname="Kent">
            <organization/>
          </author>
          <author fullname="K. Seo" initials="K." surname="Seo">
            <organization/>
          </author>
          <date month="December" year="2005"/>
          <abstract>
            <t>This document describes an updated version of the "Security Architecture for IP", which is designed to provide security services for traffic at the IP layer.  This document obsoletes RFC 2401 (November 1998).  [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="4301"/>
        <seriesInfo name="DOI" value="10.17487/RFC4301"/>
      </reference>
    </references>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
