<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="std" consensus="true" docName="draft-ietf-payload-rtp-jpegxs-18" indexInclude="true" ipr="trust200902" number="9134" prepTime="2021-10-28T16:26:12" scripts="Common,Latin" sortRefs="true" submissionType="IETF" symRefs="true" tocDepth="4" tocInclude="true" xml:lang="en">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-payload-rtp-jpegxs-18" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9134" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="RTP Payload Format for JPEG XS">RTP Payload Format for ISO/IEC 21122 (JPEG XS)</title>
    <seriesInfo name="RFC" value="9134" stream="IETF"/>
    <author fullname="Tim Bruylants" initials="T" surname="Bruylants">
      <organization abbrev="intoPIX" showOnFrontPage="true">intoPIX S.A.</organization>
      <address>
        <postal>
          <street>Rue Emile Francqui, 9</street>
          <city>Mont-Saint-Guibert</city>
          <code>1435</code>
          <country>Belgium</country>
        </postal>
        <phone>+32 10 23 84 70</phone>
        <email>t.bruylants@intopix.com</email>
        <uri>https://www.intopix.com/</uri>
      </address>
    </author>
    <author fullname="Antonin Descampe" initials="A" surname="Descampe">
      <organization abbrev="UCLouvain" showOnFrontPage="true">Université catholique de Louvain</organization>
      <address>
        <postal>
          <extaddr>bte L2.03.02</extaddr>
          <street>Ruelle de la Lanterne Magique, 14</street>
          <city>Louvain-la-Neuve</city>
          <code>1348</code>
          <country>Belgium</country>
        </postal>
        <phone>+32 10 47 27 87</phone>
        <email>antonin.descampe@uclouvain.be</email>
        <uri>https://uclouvain.be/antonin.descampe</uri>
      </address>
    </author>
    <author fullname="Corentin Damman" initials="C" surname="Damman">
      <organization abbrev="intoPIX" showOnFrontPage="true">intoPIX S.A.</organization>
      <address>
        <postal>
          <street>Rue Emile Francqui, 9</street>
          <city>Mont-Saint-Guibert</city>
          <code>1435</code>
          <country>Belgium</country>
        </postal>
        <phone>+32 10 23 84 70</phone>
        <email>c.damman@intopix.com</email>
        <uri>https://www.intopix.com/</uri>
      </address>
    </author>
    <author fullname="Thomas Richter" initials="T" surname="Richter">
      <organization abbrev="Fraunhofer IIS" showOnFrontPage="true">Fraunhofer IIS</organization>
      <address>
        <postal>
          <street>Am Wolfsmantel 33</street>
          <city>Erlangen</city>
          <code>91048</code>
          <country>Germany</country>
        </postal>
        <phone>+49 9131 776 5126</phone>
        <email>thomas.richter@iis.fraunhofer.de</email>
        <uri>https://www.iis.fraunhofer.de/</uri>
      </address>
    </author>
    <date month="10" year="2021"/>
    <area>General</area>
    <workgroup>avtcore</workgroup>
    <keyword>video</keyword>
    <keyword>transport</keyword>
    <keyword>protocol</keyword>
    <keyword>Joint</keyword>
    <keyword>Photographic</keyword>
    <keyword>Experts</keyword>
    <keyword>Group</keyword>
    <keyword>real-time</keyword>
    <keyword>stream</keyword>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">
       This document specifies a Real-Time Transport Protocol (RTP) payload
       format to be used for transporting video encoded with JPEG XS (ISO/IEC 21122).
       JPEG XS is a low-latency, lightweight image coding system. Compared to an
       uncompressed video use case, it allows higher resolutions and video frame
       rates while offering visually lossless quality, reduced power
       consumption, and encoding-decoding latency confined to a fraction of a video frame.
      </t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc9134" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2021 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Simplified BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Simplified BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-conventions-definitions-and">Conventions, Definitions, and Abbreviations</xref></t>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-media-format-description">Media Format Description</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.3.2">
              <li pn="section-toc.1-1.3.2.1">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.3.2.1.1"><xref derivedContent="3.1" format="counter" sectionFormat="of" target="section-3.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-image-data-structures">Image Data Structures</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.2">
                <t indent="0" pn="section-toc.1-1.3.2.2.1"><xref derivedContent="3.2" format="counter" sectionFormat="of" target="section-3.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-codestream">Codestream</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.3">
                <t indent="0" pn="section-toc.1-1.3.2.3.1"><xref derivedContent="3.3" format="counter" sectionFormat="of" target="section-3.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-video-support-box-and-color">Video Support Box and Color Specification Box</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.4">
                <t indent="0" pn="section-toc.1-1.3.2.4.1"><xref derivedContent="3.4" format="counter" sectionFormat="of" target="section-3.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-jpeg-xs-frame">JPEG XS Frame</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-rtp-payload-format">RTP Payload Format</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2">
              <li pn="section-toc.1-1.4.2.1">
                <t indent="0" pn="section-toc.1-1.4.2.1.1"><xref derivedContent="4.1" format="counter" sectionFormat="of" target="section-4.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-rtp-packetization">RTP Packetization</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.2">
                <t indent="0" pn="section-toc.1-1.4.2.2.1"><xref derivedContent="4.2" format="counter" sectionFormat="of" target="section-4.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-rtp-header-usage">RTP Header Usage</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.3">
                <t indent="0" pn="section-toc.1-1.4.2.3.1"><xref derivedContent="4.3" format="counter" sectionFormat="of" target="section-4.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-payload-header-usage">Payload Header Usage</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.4">
                <t indent="0" pn="section-toc.1-1.4.2.4.1"><xref derivedContent="4.4" format="counter" sectionFormat="of" target="section-4.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-payload-data">Payload Data</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-traffic-shaping-and-deliver">Traffic Shaping and Delivery Timing</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-congestion-control-consider">Congestion Control Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="7" format="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-payload-format-parameters">Payload Format Parameters</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.7.2">
              <li pn="section-toc.1-1.7.2.1">
                <t indent="0" pn="section-toc.1-1.7.2.1.1"><xref derivedContent="7.1" format="counter" sectionFormat="of" target="section-7.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-media-type-registration">Media Type Registration</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="8" format="counter" sectionFormat="of" target="section-8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-sdp-parameters">SDP Parameters</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.8.2">
              <li pn="section-toc.1-1.8.2.1">
                <t indent="0" pn="section-toc.1-1.8.2.1.1"><xref derivedContent="8.1" format="counter" sectionFormat="of" target="section-8.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-mapping-of-payload-type-par">Mapping of Payload Type Parameters to SDP</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.2">
                <t indent="0" pn="section-toc.1-1.8.2.2.1"><xref derivedContent="8.2" format="counter" sectionFormat="of" target="section-8.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-usage-with-sdp-offer-answer">Usage with SDP Offer/Answer Model</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.9">
            <t indent="0" pn="section-toc.1-1.9.1"><xref derivedContent="9" format="counter" sectionFormat="of" target="section-9"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.10">
            <t indent="0" pn="section-toc.1-1.10.1"><xref derivedContent="10" format="counter" sectionFormat="of" target="section-10"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.11">
            <t indent="0" pn="section-toc.1-1.11.1"><xref derivedContent="11" format="counter" sectionFormat="of" target="section-11"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.11.2">
              <li pn="section-toc.1-1.11.2.1">
                <t indent="0" pn="section-toc.1-1.11.2.1.1"><xref derivedContent="11.1" format="counter" sectionFormat="of" target="section-11.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.2">
                <t indent="0" pn="section-toc.1-1.11.2.2.1"><xref derivedContent="11.2" format="counter" sectionFormat="of" target="section-11.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.12">
            <t indent="0" pn="section-toc.1-1.12.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgments">Acknowledgments</xref></t>
          </li>
          <li pn="section-toc.1-1.13">
            <t indent="0" pn="section-toc.1-1.13.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">
       This document specifies a payload format for packetization of video
       signals encoded with <xref target="ISO21122-1" format="default" sectionFormat="of" derivedContent="ISO21122-1">JPEG
       XS</xref> into the <xref target="RFC3550" format="default" sectionFormat="of" derivedContent="RFC3550">Real-time
       Transport Protocol (RTP)</xref>.
      </t>
      <t indent="0" pn="section-1-2">
       The JPEG XS coding system offers compression and recompression of image
       sequences with very moderate computational resources while remaining
       robust under multiple compression and decompression cycles as well as mixing of
       content sources, e.g., embedding of subtitles, overlays, or logos. Typical
       target compression ratios ensuring visually lossless quality are in the
       range of 2:1 to 10:1 depending on the nature of the source material. The
       latency that is introduced by the encoding-decoding process can be confined
       to a fraction of a video frame, typically between a small number of lines
       down to below a single line.
      </t>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-2">
      <name slugifiedName="name-conventions-definitions-and">Conventions, Definitions, and Abbreviations</name>
      <t indent="0" pn="section-2-1">
         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" format="default" sectionFormat="of" derivedContent="RFC2119"/> <xref target="RFC8174" format="default" sectionFormat="of" derivedContent="RFC8174"/> when,
         and only when, they appear in all capitals, as shown here.
      </t>
      <dl newline="true" spacing="normal" indent="3" pn="section-2-2">
        <dt pn="section-2-2.1">Application Data Unit (ADU):</dt>
        <dd pn="section-2-2.2">
           The unit of source data provided as payload to the transport layer.
           In this RTP payload definition, it corresponds to a single JPEG
           XS video frame.
        </dd>
        <dt pn="section-2-2.3">Color Specification (CS) box:</dt>
        <dd pn="section-2-2.4">
           An ISO color specification box defined in <xref target="ISO21122-3" format="default" sectionFormat="of" derivedContent="ISO21122-3"/> (JPEG XS Part 3) that includes color-related
           metadata required to correctly display JPEG XS video frames, such
           as color primaries, transfer characteristics, and matrix
           coefficients.
        </dd>
        <dt pn="section-2-2.5">End of Codestream (EOC) marker:</dt>
        <dd pn="section-2-2.6">
	    A marker that consists of the two bytes 0xff11 indicating the end of
	      a JPEG XS codestream.
        </dd>
        <dt pn="section-2-2.7">JPEG XS codestream:</dt>
        <dd pn="section-2-2.8">
           A sequence of bytes representing a compressed image formatted
           according to <xref target="ISO21122-1" format="default" sectionFormat="of" derivedContent="ISO21122-1"/> (JPEG XS Part 1).
        </dd>
        <dt pn="section-2-2.9">JPEG XS codestream header:</dt>
        <dd pn="section-2-2.10">
           A sequence of bytes, starting with an SOC marker, at the beginning of
           each JPEG XS codestream encoded in multiple markers and marker
           segments that does not carry entropy coded data, but metadata such as
           the video frame dimension and component precision.
        </dd>
        <dt pn="section-2-2.11">JPEG XS frame:</dt>
        <dd pn="section-2-2.12">
           In the case of progressive video, a single JPEG XS picture segment. In
           the case of interlaced video, the concatenation of two JPEG XS
           picture segments.
        </dd>
        <dt pn="section-2-2.13">JPEG XS header segment:</dt>
        <dd pn="section-2-2.14">
           The concatenation of a <xref target="ISO21122-3" format="default" sectionFormat="of" derivedContent="ISO21122-3">video support box</xref>, a <xref target="ISO21122-3" format="default" sectionFormat="of" derivedContent="ISO21122-3">color specification
           box</xref>, and a JPEG XS codestream header.
        </dd>
        <dt pn="section-2-2.15">JPEG XS picture segment:</dt>
        <dd pn="section-2-2.16">
           The concatenation of a <xref target="ISO21122-3" format="default" sectionFormat="of" derivedContent="ISO21122-3">video support box</xref>, a <xref target="ISO21122-3" format="default" sectionFormat="of" derivedContent="ISO21122-3">color specification
           box</xref>, and a JPEG XS codestream.
        </dd>
        <dt pn="section-2-2.17">JPEG XS stream:</dt>
        <dd pn="section-2-2.18">
           A sequence of JPEG XS frames.
        </dd>
        <dt pn="section-2-2.19">Marker:</dt>
        <dd pn="section-2-2.20">
           A two-byte functional sequence that is part of a JPEG XS
           codestream starting with a 0xff byte and a subsequent byte
           defining its function.
        </dd>
        <dt pn="section-2-2.21">Marker segment:</dt>
        <dd pn="section-2-2.22">
           A marker along with a 16-bit marker size and payload data
           following the size.
        </dd>
        <dt pn="section-2-2.23">Packetization unit:</dt>
        <dd pn="section-2-2.24">
           A portion of an ADU whose boundaries coincide
           with boundaries of RTP packet payloads (excluding payload header),
           i.e., the first (or respectively, last) byte of a packetization unit is the
           first (or respectively, last) byte of an RTP packet payload (excluding its
           payload header).
        </dd>
        <dt pn="section-2-2.25">SLH (SLice Header) marker:</dt>
        <dd pn="section-2-2.26">
           A marker that represents a slice header, as defined in <xref target="ISO21122-1" format="default" sectionFormat="of" derivedContent="ISO21122-1"/>.
        </dd>
        <dt pn="section-2-2.27">Slice:</dt>
        <dd pn="section-2-2.28">
           The smallest independently decodable unit of a JPEG XS codestream,
           bearing in mind that it decodes to wavelet coefficients, which
           still require inverse wavelet filtering to give an image.
        </dd>
        <dt pn="section-2-2.29">Start of a Codestream (SOC) marker:</dt>
        <dd pn="section-2-2.30">
           A marker that consists of the two bytes 0xff10 indicating the
           start of a JPEG XS codestream. The SOC marker is considered an
           integral part of the JPEG XS codestream header.
        </dd>
        <dt pn="section-2-2.31">Video Support (VS) box:</dt>
        <dd pn="section-2-2.32">
           An ISO video support box, as defined in <xref target="ISO21122-3" format="default" sectionFormat="of" derivedContent="ISO21122-3"/>,
           that includes metadata required to play back a JPEG XS
           stream; such metadata could include its maximum bit rate, its subsampling structure, its
           buffer model, and its frame rate.
        </dd>
      </dl>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-3">
      <name slugifiedName="name-media-format-description">Media Format Description</name>
      <t indent="0" pn="section-3-1">
       This section explains the terminology and concepts used in this memo specific to JPEG XS
       as specified in <xref target="ISO21122-1" format="default" sectionFormat="of" derivedContent="ISO21122-1"/>, <xref target="ISO21122-2" format="default" sectionFormat="of" derivedContent="ISO21122-2"/>, and <xref target="ISO21122-3" format="default" sectionFormat="of" derivedContent="ISO21122-3"/>.
      </t>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.1">
        <name slugifiedName="name-image-data-structures">Image Data Structures</name>
        <t indent="0" pn="section-3.1-1">
         JPEG XS is a low-latency, lightweight image coding system for coding
         continuous-tone grayscale or continuous-tone color digital images.
        </t>
        <t indent="0" pn="section-3.1-2">
         This coding system provides an efficient representation of image
         signals through the mathematical tool of wavelet analysis. The wavelet
         filter process separates each component into multiple bands, where
         each band consists of multiple coefficients describing the image
         signal of a given component within a frequency domain specific to the
         wavelet filter type, i.e., the particular filter corresponding to the
         band.
        </t>
        <t indent="0" pn="section-3.1-3">
         Wavelet coefficients are grouped into precincts, where each precinct
         includes all coefficients over all bands that contribute to a spatial
         region of the image.
        </t>
        <t indent="0" pn="section-3.1-4">
         One or multiple precincts are furthermore combined into slices
         consisting of an integer number of precincts. Precincts do not
         cross slice boundaries, and wavelet coefficients in precincts that
         are part of different slices can be decoded independently of each
         other. However, note that the wavelet transformation runs across
         slice boundaries. A slice always extends over the full width of the
         image but may only cover parts of its height.
        </t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.2">
        <name slugifiedName="name-codestream">Codestream</name>
        <t indent="0" pn="section-3.2-1">
         A JPEG XS codestream is formed by (in the given order):
        </t>
        <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.2-2">
          <li pn="section-3.2-2.1">a JPEG XS codestream header, which starts with a Start of Codestream (SOC) marker,</li>
          <li pn="section-3.2-2.2">one or more slices,</li>
          <li pn="section-3.2-2.3">an EOC marker to signal the end of the codestream.</li>
        </ul>
        <t indent="0" pn="section-3.2-3">
         The JPEG XS codestream format, including the definition of all
         markers, is further defined in <xref target="ISO21122-1" format="default" sectionFormat="of" derivedContent="ISO21122-1"/>.
         It represents sample values of a single image, without any interpretation
         relative to a color space.
        </t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.3">
        <name slugifiedName="name-video-support-box-and-color">Video Support Box and Color Specification Box</name>
        <t indent="0" pn="section-3.3-1">
         While the information defined in the codestream is sufficient to
         reconstruct the sample values of one image, the interpretation of
         the samples remains undefined by the codestream itself. This
         interpretation is given by the video support box and the color
         specification box, which contain significant information to correctly
         play the JPEG XS stream. The layout and syntax of these boxes, together
         with their content, are defined in <xref target="ISO21122-3" format="default" sectionFormat="of" derivedContent="ISO21122-3"/>.
        </t>
        <t indent="0" pn="section-3.3-2">
         The video support box provides information on the maximum bit rate,
         the frame rate, the interlaced mode (progressive or interlaced), the
         subsampling image format, the informative timecode of the current
         JPEG XS frame, the profile, the level/sublevel used, and optionally 
         the buffer model and the mastering display metadata.
        </t>
        <t indent="0" pn="section-3.3-3">
         Note that the profile and level/sublevel, specified respectively by
         the <xref target="ISO21122-2" format="default" sectionFormat="of" derivedContent="ISO21122-2">Ppih and Plev
         fields</xref>, specify limits on the capabilities needed to decode
         the codestream and handle the output. Profiles represent a limit on
         the required algorithmic features and parameter ranges used in the
         codestream.  The combination of level and sublevel defines a lower
         bound on the required throughput for a decoder in the
         image (or decoded) domain and the codestream (or coded) domain, respectively. The
         actual defined profiles and levels/sublevels, along with the
         associated values for the Ppih and Plev fields, are defined in <xref target="ISO21122-2" format="default" sectionFormat="of" derivedContent="ISO21122-2"/>.
        </t>
        <t indent="0" pn="section-3.3-4">
         The color specification box indicates the color primaries, transfer
         characteristics, matrix coefficients, and video full range flag needed
         to specify the color space of the video stream.
        </t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.4">
        <name slugifiedName="name-jpeg-xs-frame">JPEG XS Frame</name>
        <t indent="0" pn="section-3.4-1">
         The concatenation of a video support box, a color specification box,
         and a JPEG XS codestream forms a JPEG XS picture segment.
        </t>
        <t indent="0" pn="section-3.4-2">
	   In the case of a progressive video stream, each JPEG XS frame consists of one single
         JPEG XS picture segment.
        </t>
        <t indent="0" pn="section-3.4-3">
         In the case of an interlaced video stream, each JPEG XS frame is made
         of two concatenated JPEG XS picture segments. The codestream of each
         picture segment corresponds exclusively to one of the two fields of
         the interlaced frame. Both picture segments <bcp14>SHALL</bcp14>
         contain identical boxes (i.e., the byte sequence that contains the
         concatenation of the video support box and the color specification
         box is exactly the same in both picture segments of the frame).
        </t>
        <t indent="0" pn="section-3.4-4">
         Note that the interlaced mode, as signaled by the <xref target="ISO21122-3" format="default" sectionFormat="of" derivedContent="ISO21122-3">frat field</xref>
         in the video support box, indicates either progressive interlaced top-field-first or
         interlaced bottom-field-first mode. Thus, in the case of interlaced content, its value
         <bcp14>SHALL</bcp14> also be identical in both picture segments.
        </t>
      </section>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-4">
      <name slugifiedName="name-rtp-payload-format">RTP Payload Format</name>
      <t indent="0" pn="section-4-1">
       This section specifies the payload format for JPEG XS streams over the
       <xref target="RFC3550" format="default" sectionFormat="of" derivedContent="RFC3550">Real-time Transport Protocol
       (RTP)</xref>.
      </t>
      <t indent="0" pn="section-4-2">
       In order to be transported over RTP, each JPEG XS stream is
       transported in a distinct RTP stream, identified by a distinct <xref target="RFC3550" format="default" sectionFormat="of" derivedContent="RFC3550">synchronization source (SSRC)</xref>.
      </t>
      <t indent="0" pn="section-4-3">
       A JPEG XS stream is divided into Application Data Units (ADUs), each ADU
       corresponding to a single JPEG XS frame.
      </t>
      <section anchor="rtp_packet" numbered="true" toc="include" removeInRFC="false" pn="section-4.1">
        <name slugifiedName="name-rtp-packetization">RTP Packetization</name>
        <t indent="0" pn="section-4.1-1">
        An ADU is made of several packetization units. If a packetization unit
        is bigger than the maximum size of an RTP packet payload, the unit is
        split into multiple RTP packet payloads, as illustrated in <xref target="rtp_packetization" format="default" sectionFormat="of" derivedContent="Figure 1"/>. As seen there, each
        packet <bcp14>SHALL</bcp14> contain (part of) one, and only one,
        packetization unit. A packetization unit may extend over multiple
        packets. The payload of every packet <bcp14>SHALL</bcp14> have the
        same size (based, e.g., on the Maximum Transfer Unit of the network)
        with the possible exception of the last packet of a packetization unit. The
        boundaries of a packetization unit <bcp14>SHALL</bcp14> coincide with
        the boundaries of the payload of a packet (excluding the payload
        header), i.e., the first (or, respectively, last) byte of the
        packetization unit <bcp14>SHALL</bcp14> be the first (or, respectively,
        last) byte of the payload (excluding its header).
        </t>
        <figure anchor="rtp_packetization" align="left" suppress-title="false" pn="figure-1">
          <name slugifiedName="name-example-of-adu-packetizatio">Example of ADU Packetization</name>
          <artwork name="" type="" align="left" alt="" pn="section-4.1-2.1">
RTP        +-----+------------------------+
Packet #1  | Hdr | Packetization unit #1  |
           +-----+------------------------+
RTP        +-----+--------------------------------------+
Packet #2  | Hdr | Packetization unit #2                |
           +-----+--------------------------------------+
RTP        +-----+--------------------------------------------------+
Packet #3  | Hdr | Packetization unit #3  (part 1/3)                |
           +-----+--------------------------------------------------+
RTP        +-----+--------------------------------------------------+
Packet #4  | Hdr | Packetization unit #3  (part 2/3)                |
           +-----+--------------------------------------------------+
RTP        +-----+----------------------------------------------+
Packet #5  | Hdr | Packetization unit #3  (part 3/3)            |
           +-----+----------------------------------------------+
             ...
RTP        +-----+-----------------------------------------+
Packet #P  | Hdr | Packetization unit #N  (part q/q)       |
           +-----+-----------------------------------------+
       </artwork>
        </figure>
        <t indent="0" pn="section-4.1-3">
        There are two different packetization modes defined for this RTP payload format.
        </t>
        <dl newline="true" indent="3" spacing="normal" pn="section-4.1-4">
          <dt pn="section-4.1-4.1">Codestream packetization mode:
</dt>
          <dd pn="section-4.1-4.2">In this mode, the packetization unit <bcp14>SHALL</bcp14> be the entire
JPEG XS picture segment (i.e., codestream preceded by boxes). This means that
a progressive frame will have a single packetization unit, while an interlaced
frame will have two. The progressive case is illustrated in <xref target="cs_packetization" format="default" sectionFormat="of" derivedContent="Figure 2"/>.
</dd>
          <dt pn="section-4.1-4.3">Slice packetization mode:
</dt>
          <dd pn="section-4.1-4.4">In this mode, the packetization unit <bcp14>SHALL</bcp14> be the slice,
i.e., there <bcp14>SHALL</bcp14> be data from no more than one slice per RTP
packet. The first packetization unit <bcp14>SHALL</bcp14> be made of the JPEG
XS header segment (i.e., the concatenation of the VS box, the CS box, and the
JPEG XS codestream header). This first unit is then followed by successive
units, each containing one and only one slice.  The packetization unit
containing the last slice of a JPEG XS codestream <bcp14>SHALL</bcp14> also
contain the EOC marker immediately following this last slice. This is
illustrated in <xref target="slice_packetization" format="default" sectionFormat="of" derivedContent="Figure 3"/>. In the
case of an interlaced frame, the JPEG XS header segment of the second field
<bcp14>SHALL</bcp14> be in its own packetization unit.
</dd>
        </dl>
        <figure anchor="cs_packetization" align="left" suppress-title="false" pn="figure-2">
          <name slugifiedName="name-example-of-codestream-packe">Example of Codestream Packetization Mode</name>
          <artwork name="" type="" align="left" alt="" pn="section-4.1-5.1">
RTP        +-----+--------------------------------------------------+
Packet #1  | Hdr | VS box + CS box + JPEG XS codestream (part 1/q)  |
           +-----+--------------------------------------------------+
RTP        +-----+--------------------------------------------------+
Packet #2  | Hdr | JPEG XS codestream (part 2/q)                    |
           +-----+--------------------------------------------------+
             ...
RTP        +-----+--------------------------------------+
Packet #P  | Hdr | JPEG XS codestream (part q/q)        |
           +-----+--------------------------------------+
       </artwork>
        </figure>
        <figure anchor="slice_packetization" align="left" suppress-title="false" pn="figure-3">
          <name slugifiedName="name-example-of-slice-packetizat">Example of Slice Packetization Mode</name>
          <artwork name="" type="" align="left" alt="" pn="section-4.1-6.1">
RTP        +-----+----------------------------+
Packet #1  | Hdr | JPEG XS header segment     |
           +-----+----------------------------+
RTP        +-----+--------------------------------------------------+
Packet #2  | Hdr | Slice #1  (part 1/2)                             |
           +-----+--------------------------------------------------+
RTP        +-----+-------------------------------------------+
Packet #3  | Hdr | Slice #1  (part 2/2)                      |
           +-----+-------------------------------------------+
RTP        +-----+--------------------------------------------------+
Packet #4  | Hdr | Slice #2  (part 1/3)                             |
           +-----+--------------------------------------------------+
             ...
RTP        +-----+---------------------------------------+
Packet #P  | Hdr | Slice #N  (part q/q) + EOC marker     |
           +-----+---------------------------------------+
       </artwork>
        </figure>
        <t indent="0" pn="section-4.1-7">
        In a constant bitrate (CBR) scenario of JPEG XS, the codestream packetization
        mode guarantees that a JPEG XS RTP stream will produce both a constant number
        of bytes per video frame and a constant number of RTP packets per video frame.
        However, to provide similar guarantees with JPEG XS in a variable bitrate (VBR)
        mode or when using the slice packetization mode (for either CBR or VBR), additional
        mechanisms are needed. This can involve a constraint at the rate allocation
        stage in the JPEG XS encoder to impose a CBR at the slice level,
        the usage of padding data, or the insertion of empty RTP packets (i.e., an RTP
        packet whose payload data is empty). But, management of the amount of produced
        packets per video frame is application dependent and not a strict requirement of
        this RTP payload specification.
        </t>
      </section>
      <section anchor="rtp_hdr" numbered="true" toc="include" removeInRFC="false" pn="section-4.2">
        <name slugifiedName="name-rtp-header-usage">RTP Header Usage</name>
        <t indent="0" pn="section-4.2-1">
        The format of the RTP header is specified in <xref target="RFC3550" format="default" sectionFormat="of" derivedContent="RFC3550"/> and
        reprinted in <xref target="rtp_header" format="default" sectionFormat="of" derivedContent="Figure 4"/> for
        convenience. This RTP payload format uses the fields of the header in a
        manner consistent with that specification.
        </t>
        <t indent="0" pn="section-4.2-2">
        The RTP payload (and the settings for some RTP header bits) for
        packetization units are specified in <xref target="payload_hdr" format="default" sectionFormat="of" derivedContent="Section 4.3"/>.
        </t>
        <figure anchor="rtp_header" align="left" suppress-title="false" pn="figure-4">
          <name slugifiedName="name-rtp-header-according-to-rfc">RTP Header According to RFC 3550</name>
          <artwork name="" type="" align="left" alt="" pn="section-4.2-3.1">
    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |V=2|P|X|  CC   |M|     PT      |       sequence number         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                           timestamp                           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |           synchronization source (SSRC) identifier            |
   +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
   |            contributing source (CSRC) identifiers             |
   |                             ....                              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       </artwork>
        </figure>
        <t indent="0" pn="section-4.2-4">
        The version (V), padding (P), extension (X), CSRC count (CC),
        sequence number, synchronization source (SSRC), and contributing
        source (CSRC) fields follow their respective definitions in
        <xref target="RFC3550" format="default" sectionFormat="of" derivedContent="RFC3550"/>.
        </t>
        <t indent="0" pn="section-4.2-5">
        The remaining RTP header information to be set according to this RTP
        payload format is set as follows:
        </t>
        <dl newline="true" spacing="normal" indent="3" pn="section-4.2-6">
          <dt pn="section-4.2-6.1">Marker (M) [1 bit]:</dt>
          <dd pn="section-4.2-6.2">
            <t indent="0" pn="section-4.2-6.2.1">
         If progressive scan video is being transmitted, the marker bit
         denotes the end of a video frame. If interlaced video is being
         transmitted, it denotes the end of the field. The marker bit <bcp14>SHALL</bcp14>
         be set to 1 for the last packet of the video frame/field. It <bcp14>SHALL</bcp14>
         be set to 0 for all other packets.
            </t>
          </dd>
          <dt pn="section-4.2-6.3">Payload Type (PT) [7 bits]:</dt>
          <dd pn="section-4.2-6.4">
            <t indent="0" pn="section-4.2-6.4.1">
         The payload type is a dynamically allocated payload type field that
         designates the payload as JPEG XS video.
            </t>
          </dd>
          <dt pn="section-4.2-6.5">Timestamp [32 bits]:</dt>
          <dd pn="section-4.2-6.6">
            <t indent="0" pn="section-4.2-6.6.1">
         The RTP timestamp is set to the sampling timestamp of the content.
         A 90 kHz clock rate <bcp14>SHALL</bcp14> be used.</t>
            <t indent="0" pn="section-4.2-6.6.2">
         
         As specified in <xref target="RFC3550" format="default" sectionFormat="of" derivedContent="RFC3550"/> and
         <xref target="RFC4175" format="default" sectionFormat="of" derivedContent="RFC4175"/>, the RTP timestamp designates the
         sampling instant of the first octet of the video frame to which the RTP
         packet belongs. Packets <bcp14>SHALL NOT</bcp14> include data from multiple video frames, and
         all packets belonging to the same video frame <bcp14>SHALL</bcp14> have the same timestamp.
         Several successive RTP packets will consequently have equal timestamps
         if they belong to the same video frame (that is until the marker bit is set
         to 1, marking the last packet of the video frame), and the timestamp is only
         increased when a new video frame begins.</t>
            <t indent="0" pn="section-4.2-6.6.3">
         
         If the sampling instant does not correspond to an integer value of
         the clock, the value <bcp14>SHALL</bcp14> be truncated to the next lowest integer,
         with no ambiguity.
            </t>
          </dd>
        </dl>
      </section>
      <section anchor="payload_hdr" numbered="true" toc="include" removeInRFC="false" pn="section-4.3">
        <name slugifiedName="name-payload-header-usage">Payload Header Usage</name>
        <t indent="0" pn="section-4.3-1">
         The first four bytes of the payload of an RTP packet in this RTP
         payload format are referred to as the "payload header". <xref target="payload_header" format="default" sectionFormat="of" derivedContent="Figure 5"/> illustrates the structure of this
         payload header.
        </t>
        <figure anchor="payload_header" align="left" suppress-title="false" pn="figure-5">
          <name slugifiedName="name-payload-header">Payload Header</name>
          <artwork name="" type="" align="left" alt="" pn="section-4.3-2.1">
    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |T|K|L| I |F counter|     SEP counter     |     P counter       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        </artwork>
        </figure>
        <t indent="0" pn="section-4.3-3">
         The payload header consists of the following fields:
        </t>
        <dl newline="true" spacing="normal" indent="3" pn="section-4.3-4">
          <dt pn="section-4.3-4.1">Transmission mode (T) [1 bit]:</dt>
          <dd pn="section-4.3-4.2">
            <t indent="0" pn="section-4.3-4.2.1">
         The T bit is set to indicate that packets are sent sequentially by the
         transmitter. This information allows a receiver to dimension its
         input buffer(s) accordingly. If T=0, nothing can be assumed about the
         transmission order and packets may be sent out of order by the
         transmitter. If T=1, packets <bcp14>SHALL</bcp14> be sent sequentially by the
         transmitter. The T-bit value <bcp14>SHALL</bcp14> be identical for all packets of
         the RTP stream.
            </t>
          </dd>
          <dt pn="section-4.3-4.3">pacKetization mode (K) [1 bit]:</dt>
          <dd pn="section-4.3-4.4">
            <t indent="0" pn="section-4.3-4.4.1">
         The K bit is set to indicate which packetization mode is used. K=0
         indicates codestream packetization mode, while K=1 indicates slice
         packetization mode. In the case that the Transmission mode (T) is
         set to 0 (out of order), the slice packetization mode <bcp14>SHALL</bcp14> be used
         and K <bcp14>SHALL</bcp14> be set to 1. This is required because only the slice
         packetization mode supports out-of-order packet transmission. The
         K-bit value <bcp14>SHALL</bcp14> be identical for all packets of the RTP stream.
            </t>
          </dd>
          <dt pn="section-4.3-4.5">Last (L) [1 bit]:</dt>
          <dd pn="section-4.3-4.6">
            <t indent="0" pn="section-4.3-4.6.1">
         The L bit is set to indicate the last packet of a packetization unit.
         As the end of the video frame also ends the packet containing the last unit
         of the video frame, the L bit is set whenever the M bit is set. In
         the codestream packetization mode, the L bit and M bit get an equivalent
         meaning, so they <bcp14>SHALL</bcp14> have identical values in each packet.
            </t>
          </dd>
          <dt pn="section-4.3-4.7">Interlaced information (I) [2 bits]:</dt>
          <dd pn="section-4.3-4.8">
            <t indent="0" pn="section-4.3-4.8.1">
         These two I bits are used to indicate how the JPEG XS frame is scanned
         (progressive or interlaced). In case of an interlaced frame, they also
         indicate which JPEG XS picture segment the payload is part of (first
         or second).
            </t>
            <dl newline="false" spacing="normal" indent="6" pn="section-4.3-4.8.2">
              <dt pn="section-4.3-4.8.2.1">00:</dt>
              <dd pn="section-4.3-4.8.2.2">
             The payload is progressively scanned.
              </dd>
              <dt pn="section-4.3-4.8.2.3">01:</dt>
              <dd pn="section-4.3-4.8.2.4">
             This value is reserved for future use.
              </dd>
              <dt pn="section-4.3-4.8.2.5">10:</dt>
              <dd pn="section-4.3-4.8.2.6">
             The payload is part of the first JPEG XS picture segment of
             an interlaced video frame. The height specified in the included
             JPEG XS codestream header is half of the height of the entire
             displayed image.
              </dd>
              <dt pn="section-4.3-4.8.2.7">11:</dt>
              <dd pn="section-4.3-4.8.2.8">
             The payload is part of the second JPEG XS picture segment of
             an interlaced video frame. The height specified in the included
             JPEG XS codestream header is half of the height of the entire
             displayed image.
              </dd>
            </dl>
          </dd>
          <dt pn="section-4.3-4.9">F counter [5 bits]:</dt>
          <dd pn="section-4.3-4.10">
            <t indent="0" pn="section-4.3-4.10.1">
         The Frame (F) counter identifies the video frame number modulo 32 to which a
         packet belongs. Frame numbers are incremented by 1 for each video frame
         transmitted. The frame number, in addition to the timestamp, may help
         the decoder manage its input buffer and bring packets back into their
         natural order.
            </t>
          </dd>
          <dt pn="section-4.3-4.11">Slice and Extended Packet (SEP) counter [11 bits]:</dt>
          <dd pn="section-4.3-4.12">
            <t indent="0" pn="section-4.3-4.12.1">
         The SEP counter is used differently
         depending on the packetization mode.
            </t>
            <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-4.3-4.12.2">
              <li pn="section-4.3-4.12.2.1">In the case of codestream packetization mode (K=0), this
              counter resets whenever the Packet counter resets (see <xref target="rtp_payload_data" format="default" sectionFormat="of" derivedContent="Section 4.4"/>) and increments by
              1 whenever the Packet counter overruns.
              </li>
              <li pn="section-4.3-4.12.2.2">In the case of slice packetization mode (K=1), this counter
          identifies the slice modulo 2047 to which the packet contributes. If
          the data belongs to the JPEG XS header segment, this field <bcp14>SHALL</bcp14> have
          its maximal value, namely 2047 = 0x07ff. Otherwise, it is the slice
          index modulo 2047. Slice indices are counted from 0 (corresponding to
          the top of the video frame).
              </li>
            </ul>
          </dd>
          <dt pn="section-4.3-4.13">P counter [11 bits]:</dt>
          <dd pn="section-4.3-4.14">
            <t indent="0" pn="section-4.3-4.14.1">
         The Packet (P) counter identifies the packet number modulo 2048
         within the current packetization unit. It is set to 0 at the start of
         the packetization unit and incremented by 1 for every subsequent
         packet (if any) belonging to the same unit. Practically, if
         codestream packetization mode is enabled, this field counts the
         packets within a JPEG XS picture segment and is extended by the SEP
         counter when it overruns. If slice packetization mode is enabled,
         this field counts the packets within a slice or within the JPEG XS
         header segment.
            </t>
          </dd>
        </dl>
      </section>
      <section anchor="rtp_payload_data" numbered="true" toc="include" removeInRFC="false" pn="section-4.4">
        <name slugifiedName="name-payload-data">Payload Data</name>
        <t indent="0" pn="section-4.4-1">
       The payload data of a JPEG XS RTP stream consists of a concatenation of
       multiple JPEG XS frames. Within the RTP stream, all of the video support boxes
       and all of the color specification boxes <bcp14>SHALL</bcp14> retain their respective layouts
       for each JPEG XS frame. Thus, each video support box in the RTP stream <bcp14>SHALL</bcp14>
       define the same sub boxes. The effective values in the boxes are allowed to
       change under the condition that their relative byte offsets <bcp14>SHALL NOT</bcp14> change.
        </t>
        <t indent="0" pn="section-4.4-2">
       Each JPEG XS frame is the concatenation of one or more packetization
       unit(s), as explained in <xref target="rtp_packet" format="default" sectionFormat="of" derivedContent="Section 4.1"/>.
       <xref target="rtp_cs_progressive_packet_data" format="default" sectionFormat="of" derivedContent="Figure 6"/> depicts this
       layout for a progressive video frame in the codestream packetization mode,
       <xref target="rtp_cs_interlaced_packet_data" format="default" sectionFormat="of" derivedContent="Figure 7"/> depicts this
       layout for an interlaced video frame in the codestream packetization mode, 
       <xref target="rtp_slice_progressive_packet_data" format="default" sectionFormat="of" derivedContent="Figure 8"/> depicts this
       layout for a progressive video frame in the slice packetization mode, and
       <xref target="rtp_slice_interlaced_packet_data" format="default" sectionFormat="of" derivedContent="Figure 9"/> depicts this
       layout for an interlaced video frame in the slice packetization mode. The Frame
       counter value is not indicated because the value is constant for all
       packetization units of a given video frame.
        </t>
        <figure anchor="rtp_cs_progressive_packet_data" align="left" suppress-title="false" pn="figure-6">
          <name slugifiedName="name-example-of-jpeg-xs-payload-">Example of JPEG XS Payload Data (Codestream Packetization
          Mode, Progressive Video Frame)</name>
          <artwork name="" type="" align="left" alt="" pn="section-4.4-3.1">
+=====[ Packetization unit (PU) #1 ]====+
|           Video support box           |  SEP counter=0
|  +---------------------------------+  |  P counter=0
|  :      Sub boxes of the VS box    :  |
|  +---------------------------------+  |
+- - - - - - - - - - - - - - - - - - - -+
|        Color specification box        |
|  +---------------------------------+  |
|  :      Fields of the CS box       :  |
|  +---------------------------------+  |
+- - - - - - - - - - - - - - - - - - - -+
|          JPEG XS codestream           |
:             (part 1/q)                :  M=0, K=0, L=0, I=00
+---------------------------------------+
|          JPEG XS codestream           |  SEP counter=0
|             (part 2/q)                |  P counter=1
:                                       :  M=0, K=0, L=0, I=00
+---------------------------------------+
|          JPEG XS codestream           |  SEP counter=0
|             (part 3/q)                |  P counter=2
:                                       :  M=0, K=0, L=0, I=00
+---------------------------------------+
:                                       :
+---------------------------------------+
|          JPEG XS codestream           |  SEP counter=1
|            (part 2049/q)              |  P counter=0
:                                       :  M=0, K=0, L=0, I=00
+---------------------------------------+
:                                       :
+---------------------------------------+
|          JPEG XS codestream           |  SEP counter=(q-1) div 2048
|             (part q/q)                |  P counter=(q-1) mod 2048
:                                       :  M=1, K=0, L=1, I=00
+=======================================+
        </artwork>
        </figure>
        <t indent="0" pn="section-4.4-4"/>
        <figure anchor="rtp_cs_interlaced_packet_data" align="left" suppress-title="false" pn="figure-7">
          <name slugifiedName="name-example-of-jpeg-xs-payload-d">Example of JPEG XS Payload Data (Codestream Packetization Mode, Interlaced Video Frame)</name>
          <artwork name="" type="" align="left" alt="" pn="section-4.4-5.1">
+=====[ Packetization unit (PU) #1 ]====+
|           Video support box           |  SEP counter=0
+- - - - - - - - - - - - - - - - - - - -+  P counter=0
|        Color specification box        |
+- - - - - - - - - - - - - - - - - - - -+
|     JPEG XS codestream (1st field)    |
:             (part 1/q)                :  M=0, K=0, L=0, I=10
+---------------------------------------+
|     JPEG XS codestream (1st field)    |  SEP counter=0
|             (part 2/q)                |  P counter=1
:                                       :  M=0, K=0, L=0, I=10
+---------------------------------------+
:                                       :
+---------------------------------------+
|     JPEG XS codestream (1st field)    |  SEP counter=1
|            (part 2049/q)              |  P counter=0
:                                       :  M=0, K=0, L=0, I=10
+---------------------------------------+
:                                       :
+---------------------------------------+
|     JPEG XS codestream (1st field)    |  SEP counter=(q-1) div 2048
|             (part q/q)                |  P counter=(q-1) mod 2048
:                                       :  M=1, K=0, L=1, I=10
+===============[ PU #2 ]===============+
|           Video support box           |  SEP counter=0
+- - - - - - - - - - - - - - - - - - - -+  P counter=0
|        Color specification box        |
+- - - - - - - - - - - - - - - - - - - -+
|     JPEG XS codestream (2nd field)    |
|             (part 1/q)                |
:                                       :  M=0, K=0, L=0, I=11
+---------------------------------------+
|     JPEG XS codestream (2nd field)    |  SEP counter=0
|             (part 2/q)                |  P counter=1
:                                       :  M=0, K=0, L=0, I=11
+---------------------------------------+
:                                       :
+---------------------------------------+
|     JPEG XS codestream (2nd field)    |  SEP counter=(q-1) div 2048
|             (part q/q)                |  P counter=(q-1) mod 2048
:                                       :  M=1, K=0, L=1, I=11
+=======================================+
        </artwork>
        </figure>
        <t indent="0" pn="section-4.4-6"/>
        <figure anchor="rtp_slice_progressive_packet_data" align="left" suppress-title="false" pn="figure-8">
          <name slugifiedName="name-example-of-jpeg-xs-payload-da">Example of JPEG XS Payload Data (Slice Packetization Mode, Progressive Video Frame)</name>
          <artwork name="" type="" align="left" alt="" pn="section-4.4-7.1">
+===[ PU #1: JPEG XS Header segment ]===+
|           Video support box           |  SEP counter=0x07FF
+- - - - - - - - - - - - - - - - - - - -+  P counter=0
|        Color specification box        |
+- - - - - - - - - - - - - - - - - - - -+
|      JPEG XS codestream header        |
|  +---------------------------------+  |
|  :  Markers and marker segments    :  |
|  +---------------------------------+  |  M=0, T=0, K=1, L=1, I=00
+==========[ PU #2: Slice #1 ]==========+
|  +---------------------------------+  |  SEP counter=0
|  |           SLH Marker            |  |  P counter=0
|  +---------------------------------+  |
|  :       Entropy Coded Data        :  |
|  +---------------------------------+  |  M=0, T=0, K=1, L=1, I=00
+==========[ PU #3: Slice #2 ]==========+
|               Slice #2                |  SEP counter=1
|              (part 1/q)               |  P counter=0
:                                       :  M=0, T=0, K=1, L=0, I=00
+---------------------------------------+
|               Slice #2                |  SEP counter=1
|              (part 2/q)               |  P counter=1
:                                       :  M=0, T=0, K=1, L=0, I=00
+---------------------------------------+
:                                       :
+---------------------------------------+
|               Slice #2                |  SEP counter=1
|              (part q/q)               |  P counter=q-1
:                                       :  M=0, T=0, K=1, L=1, I=00
+=======================================+
:                                       :
+========[ PU #N: Slice #(N-1) ]========+
|             Slice #(N-1)              |  SEP counter=N-2
|              (part 1/r)               |  P counter=0
:                                       :  M=0, T=0, K=1, L=0, I=00
+---------------------------------------+
:                                       :
+---------------------------------------+
|             Slice #(N-1)              |  SEP counter=N-2
|              (part r/r)               |  P counter=r-1
:             + EOC marker              :  M=1, T=0, K=1, L=1, I=00
+=======================================+
        </artwork>
        </figure>
        <t indent="0" pn="section-4.4-8"/>
        <figure anchor="rtp_slice_interlaced_packet_data" align="left" suppress-title="false" pn="figure-9">
          <name slugifiedName="name-example-of-jpeg-xs-payload-dat">Example of JPEG XS Payload Data (Slice Packetization Mode, Interlaced Video Frame)</name>
          <artwork name="" type="" align="left" alt="" pn="section-4.4-9.1">
+====[ PU #1: JPEG XS Hdr segment 1 ]===+
|           Video support box           |  SEP counter=0x07FF
+- - - - - - - - - - - - - - - - - - - -+  P counter=0
|        Color specification box        |
+- - - - - - - - - - - - - - - - - - - -+
|      JPEG XS codestream header 1      |
|  +---------------------------------+  |
|  :   Markers and marker segments   :  |
|  +---------------------------------+  |  M=0, T=0, K=1, L=1, I=10
+====[ PU #2: Slice #1 (1st field) ]====+
|  +---------------------------------+  |  SEP counter=0
|  |           SLH Marker            |  |  P counter=0
|  +---------------------------------+  |
|  :       Entropy Coded Data        :  |
|  +---------------------------------+  |  M=0, T=0, K=1, L=1, I=10
+====[ PU #3: Slice #2 (1st field) ]====+
|              Slice #2                 |  SEP counter=1
|             (part 1/q)                |  P counter=0
:                                       :  M=0, T=0, K=1, L=0, I=10
+---------------------------------------+
|              Slice #2                 |  SEP counter=1
|             (part 2/q)                |  P counter=1
:                                       :  M=0, T=0, K=1, L=0, I=10
+---------------------------------------+
:                                       :
+---------------------------------------+
|              Slice #2                 |  SEP counter=1
|             (part q/q)                |  P counter=q-1
:                                       :  M=0, T=0, K=1, L=1, I=10
+=======================================+
:                                       :
+==[ PU #N: Slice #(N-1) (1st field) ]==+
|            Slice #(N-1)               |  SEP counter=N-2
|             (part 1/r)                |  P counter=0
:                                       :  M=0, T=0, K=1, L=0, I=10
+---------------------------------------+
:                                       :
+---------------------------------------+
|            Slice #(N-1)               |  SEP counter=N-2
|             (part r/r)                |  P counter=r-1
:            + EOC marker               :  M=1, T=0, K=1, L=1, I=10
+=======================================+
+===[ PU #N+1: JPEG XS Hdr segment 2 ]==+
|           Video support box           |  SEP counter=0x07FF
+- - - - - - - - - - - - - - - - - - - -+  P counter=0
|        Color specification box        |
+- - - - - - - - - - - - - - - - - - - -+
|       JPEG XS codestream header 2     |
|  +---------------------------------+  |
|  :  Markers and marker segments    :  |
|  +---------------------------------+  |  M=0, T=0, K=1, L=1, I=11
+===[ PU #N+2: Slice #1 (2nd field) ]===+
|  +---------------------------------+  |  SEP counter=0
|  |           SLH Marker            |  |  P counter=0
|  +---------------------------------+  |
|  :      Entropy Coded Data         :  |
|  +---------------------------------+  |  M=0, T=0, K=1, L=1, I=11
+===[ PU #N+3: Slice #2 (2nd field) ]===+
|               Slice #2                |  SEP counter=1
|              (part 1/s)               |  P counter=0
:                                       :  M=0, T=0, K=1, L=0, I=11
+---------------------------------------+
|               Slice #2                |  SEP counter=1
|              (part 2/s)               |  P counter=1
:                                       :  M=0, T=0, K=1, L=0, I=11
+---------------------------------------+
:                                       :
+---------------------------------------+
|               Slice #2                |  SEP counter=1
|              (part s/s)               |  P counter=s-1
:                                       :  M=0, T=0, K=1, L=1, I=11
+=======================================+
:                                       :
+==[ PU #2N: Slice #(N-1) (2nd field) ]=+
|             Slice #(N-1)              |  SEP counter=N-2
|              (part 1/t)               |  P counter=0
:                                       :  M=0, T=0, K=1, L=0, I=11
+---------------------------------------+
:                                       :
+---------------------------------------+
|             Slice #(N-1)              |  SEP counter=N-2
|              (part t/t)               |  P counter=t-1
:             + EOC marker              :  M=1, T=0, K=1, L=1, I=11
+=======================================+
        </artwork>
        </figure>
      </section>
    </section>
    <section anchor="tsdt" numbered="true" toc="include" removeInRFC="false" pn="section-5">
      <name slugifiedName="name-traffic-shaping-and-deliver">Traffic Shaping and Delivery Timing</name>
      <t indent="0" pn="section-5-1">
       In order to facilitate proper synchronization between senders and
       receivers, it is <bcp14>RECOMMENDED</bcp14> to implement traffic
       shaping and delivery timing in accordance with the Network
       Compatibility Model compliance definitions specified in <xref target="SMPTE2110-21" format="default" sectionFormat="of" derivedContent="SMPTE2110-21"/>. In such a case, the session
       description <bcp14>SHALL</bcp14> signal the compliance with the media
       type parameter TP. The actual applied traffic shaping and
       timing delivery mechanism is outside the scope of this memo and does
       not influence the payload packetization.
      </t>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-6">
      <name slugifiedName="name-congestion-control-consider">Congestion Control Considerations</name>
      <t indent="0" pn="section-6-1">
       Congestion control for RTP <bcp14>SHALL</bcp14> be used in accordance with
       <xref target="RFC3550" format="default" sectionFormat="of" derivedContent="RFC3550"/> and with any applicable
       RTP profile, e.g., <xref target="RFC3551" format="default" sectionFormat="of" derivedContent="RFC3551">RTP/AVP</xref> or
       <xref target="RFC4585" format="default" sectionFormat="of" derivedContent="RFC4585">RTP/AVPF</xref>.
      </t>
      <t indent="0" pn="section-6-2">
       While JPEG XS is mainly designed to be used in controlled network
       environments, it can also be employed in best-effort network
       environments, like the Internet. However, in this case, the users of
       this payload format <bcp14>SHALL</bcp14> monitor packet loss to ensure
       that the packet loss rate is within acceptable parameters. This can be
       achieved, for example, by means of <xref target="RFC8888" format="default" sectionFormat="of" derivedContent="RFC8888">RTP Control Protocol (RTCP) Feedback for Congestion
       Control</xref>.
      </t>
      <t indent="0" pn="section-6-3">
       In addition, <xref target="RFC8083" format="default" sectionFormat="of" derivedContent="RFC8083"/> is an update to
       <xref target="RFC3550" format="default" sectionFormat="of" derivedContent="RFC3550"/> that defines criteria for
       when one is required to stop sending RTP Packet Streams and for when
       applications implementing this standard <bcp14>SHALL</bcp14> comply
       with it.
      </t>
      <t indent="0" pn="section-6-4">
       <xref target="RFC8085" format="default" sectionFormat="of" derivedContent="RFC8085"/> provides additional information
       on the best practices for applying congestion control to UDP streams.
      </t>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-7">
      <name slugifiedName="name-payload-format-parameters">Payload Format Parameters</name>
      <t indent="0" pn="section-7-1">
      This section specifies the required and optional parameters of the payload format and/or
      the RTP stream. All parameters are declarative, meaning that the information signaled by
      the parameters is also present in the payload data, namely in the payload header (see <xref target="payload_hdr" format="default" sectionFormat="of" derivedContent="Section 4.3"/>) or in the JPEG XS header segment <xref target="ISO21122-1" format="default" sectionFormat="of" derivedContent="ISO21122-1"/> <xref target="ISO21122-3" format="default" sectionFormat="of" derivedContent="ISO21122-3"/>. When provided, their respective values <bcp14>SHALL</bcp14> be consistent with the payload.
      </t>
      <section anchor="media_type_def" numbered="true" toc="include" removeInRFC="false" pn="section-7.1">
        <name slugifiedName="name-media-type-registration">Media Type Registration</name>
        <t indent="0" pn="section-7.1-1">
          This registration is done using the template defined in <xref target="RFC6838" format="default" sectionFormat="of" derivedContent="RFC6838"/> and following <xref target="RFC4855" format="default" sectionFormat="of" derivedContent="RFC4855"/>.
  
        </t>
        <t indent="0" pn="section-7.1-2"> The receiver <bcp14>SHALL</bcp14> ignore any unrecognized parameter.</t>
        <dl newline="true" spacing="normal" indent="3" pn="section-7.1-3">
          <dt pn="section-7.1-3.1">Type name:</dt>
          <dd pn="section-7.1-3.2">video</dd>
          <dt pn="section-7.1-3.3">Subtype name:</dt>
          <dd pn="section-7.1-3.4">jxsv</dd>
          <dt pn="section-7.1-3.5">Required parameters:</dt>
          <dd pn="section-7.1-3.6">
            <dl newline="false" spacing="normal" indent="3" pn="section-7.1-3.6.1">
              <dt pn="section-7.1-3.6.1.1">rate:</dt>
              <dd pn="section-7.1-3.6.1.2">
		 The RTP timestamp clock rate. Applications using this payload format <bcp14>SHALL</bcp14> use a value of 90000.
              </dd>
              <dt pn="section-7.1-3.6.1.3">packetmode:</dt>
              <dd pn="section-7.1-3.6.1.4">
                 This parameter specifies the configured packetization mode as defined
                 by the pacKetization mode (K) bit in the payload header of <xref target="payload_hdr" format="default" sectionFormat="of" derivedContent="Section 4.3"/>.
                 This value <bcp14>SHALL</bcp14> be equal to the K-bit value configured in the RTP stream (i.e., 0 for codestream or 1 for slice).
              </dd>
            </dl>
          </dd>
          <dt pn="section-7.1-3.7">Optional parameters:</dt>
          <dd pn="section-7.1-3.8">
            <dl newline="false" spacing="normal" indent="3" pn="section-7.1-3.8.1">
              <dt pn="section-7.1-3.8.1.1">transmode:</dt>
              <dd pn="section-7.1-3.8.1.2">
		  This parameter specifies the configured transmission mode as
		    defined by the Transmission mode (T) bit in the payload
		      header of <xref target="payload_hdr" format="default" sectionFormat="of" derivedContent="Section 4.3"/>.  If
		        specified, this value <bcp14>SHALL</bcp14> be equal to the
			  T-bit value configured in the RTP stream (i.e., 0 for
			    out-of-order-allowed or 1 for sequential-only). If not
			      specified, a value 1 (sequential-only) <bcp14>SHALL</bcp14>
			        be assumed and the T bit <bcp14>SHALL</bcp14> be set to 1.
              </dd>
              <dt pn="section-7.1-3.8.1.3">profile:</dt>
              <dd pn="section-7.1-3.8.1.4">
                 The <xref target="ISO21122-2" format="default" sectionFormat="of" derivedContent="ISO21122-2">JPEG XS profile</xref> in use.
                 Any white space Unicode character in the profile name <bcp14>SHALL</bcp14> be omitted.
                 Examples of valid profile names are 'Main444.12' or 'High444.12'. 
              </dd>
              <dt pn="section-7.1-3.8.1.5">level:</dt>
              <dd pn="section-7.1-3.8.1.6">
                 The <xref target="ISO21122-2" format="default" sectionFormat="of" derivedContent="ISO21122-2">JPEG XS level</xref> in use.
                 Any white space Unicode character in the level name <bcp14>SHALL</bcp14> be omitted.
                 Examples of valid levels are '2k-1' or '4k-2'.
              </dd>
              <dt pn="section-7.1-3.8.1.7">sublevel:</dt>
              <dd pn="section-7.1-3.8.1.8">
                 The <xref target="ISO21122-2" format="default" sectionFormat="of" derivedContent="ISO21122-2">JPEG XS sublevel</xref> in use.
                 Any white space Unicode character in the sublevel name <bcp14>SHALL</bcp14> be omitted.
                 Examples of valid sublevels are 'Sublev3bpp' or 'Sublev6bpp'.
              </dd>
              <dt pn="section-7.1-3.8.1.9">depth:</dt>
              <dd pn="section-7.1-3.8.1.10">
                 Determines the number of bits per sample. This is an
                 integer with typical values including 8, 10, 12, and 16.
              </dd>
              <dt pn="section-7.1-3.8.1.11">width:</dt>
              <dd pn="section-7.1-3.8.1.12">
                 Determines the number of pixels per line. This is an
                 integer between 1 and 32767, inclusive.
              </dd>
              <dt pn="section-7.1-3.8.1.13">height:</dt>
              <dd pn="section-7.1-3.8.1.14">
                 Determines the number of lines per video frame. This is an
                 integer between 1 and 32767, inclusive.
              </dd>
              <dt pn="section-7.1-3.8.1.15">exactframerate:</dt>
              <dd pn="section-7.1-3.8.1.16">
                 Signals the video frame rate in frames per second.
                 Integer frame rates <bcp14>SHALL</bcp14> be signaled as a single decimal
                 number (e.g., "25") whilst non-integer frame rates <bcp14>SHALL</bcp14> be
                 signaled as a ratio of two integer decimal numbers separated
                 by a "forward-slash" character (e.g., "30000/1001"), utilizing
                 the numerically smallest numerator value possible.
              </dd>
              <dt pn="section-7.1-3.8.1.17">interlace:</dt>
              <dd pn="section-7.1-3.8.1.18">
                 If this parameter name is present, it indicates
                 that the video is interlaced, or that the video is
                 Progressive segmented Frame (PsF). If this parameter name is
                 not present, the progressive video format <bcp14>SHALL</bcp14> be assumed.
              </dd>
              <dt pn="section-7.1-3.8.1.19">segmented:</dt>
              <dd pn="section-7.1-3.8.1.20">
                 If this parameter name is present, and the
                 interlace parameter name is also present, then the video is a
                 Progressive segmented Frame (PsF). Signaling of this
                 parameter without the interlace parameter is forbidden.
              </dd>
              <dt pn="section-7.1-3.8.1.21">sampling:</dt>
              <dd pn="section-7.1-3.8.1.22">
                <t indent="0" pn="section-7.1-3.8.1.22.1">
                 Signals the color difference signal sub-sampling
                 structure.
                </t>
                <t indent="0" pn="section-7.1-3.8.1.22.2">
                 Signals utilizing the non-constant luminance
                 Y'C'B C'R signal format of <xref target="BT.601-7" format="default" sectionFormat="of" derivedContent="BT.601-7"/>,
                 <xref target="BT.709-6" format="default" sectionFormat="of" derivedContent="BT.709-6"/>, <xref target="BT.2020-2" format="default" sectionFormat="of" derivedContent="BT.2020-2"/>,
                 or <xref target="BT.2100-2" format="default" sectionFormat="of" derivedContent="BT.2100-2"/> <bcp14>SHALL</bcp14> use the appropriate one
                 of the following values for the Media Type Parameter
                 "sampling":

                </t>
                <dl indent="15" spacing="compact" newline="false" pn="section-7.1-3.8.1.22.3">
                  <dt pn="section-7.1-3.8.1.22.3.1">YCbCr-4:4:4</dt>
                  <dd pn="section-7.1-3.8.1.22.3.2">(4:4:4 sampling)</dd>
                  <dt pn="section-7.1-3.8.1.22.3.3">YCbCr-4:2:2</dt>
                  <dd pn="section-7.1-3.8.1.22.3.4">(4:2:2 sampling)</dd>
                  <dt pn="section-7.1-3.8.1.22.3.5">YCbCr-4:2:0</dt>
                  <dd pn="section-7.1-3.8.1.22.3.6">
                    <t indent="0" pn="section-7.1-3.8.1.22.3.6.1">(4:2:0 sampling)</t>
                  </dd>
                </dl>
                <t indent="0" pn="section-7.1-3.8.1.22.4">
                 Signals utilizing the Constant Luminance Y'C C'BC C'RC signal
                 format of <xref target="BT.2020-2" format="default" sectionFormat="of" derivedContent="BT.2020-2"/> <bcp14>SHALL</bcp14> use the
                 appropriate one of the following values for the Media Type
                 Parameter "sampling":
                </t>
                <dl indent="15" spacing="compact" newline="false" pn="section-7.1-3.8.1.22.5">
                  <dt pn="section-7.1-3.8.1.22.5.1">CLYCbCr-4:4:4</dt>
                  <dd pn="section-7.1-3.8.1.22.5.2">(4:4:4 sampling)</dd>
                  <dt pn="section-7.1-3.8.1.22.5.3">CLYCbCr-4:2:2</dt>
                  <dd pn="section-7.1-3.8.1.22.5.4">(4:2:2 sampling)</dd>
                  <dt pn="section-7.1-3.8.1.22.5.5">CLYCbCr-4:2:0</dt>
                  <dd pn="section-7.1-3.8.1.22.5.6">
                    <t indent="0" pn="section-7.1-3.8.1.22.5.6.1">(4:2:0 sampling)</t>
                  </dd>
                </dl>
                <t indent="0" pn="section-7.1-3.8.1.22.6">
                 Signals utilizing the constant intensity I CT CP signal format
                 of <xref target="BT.2100-2" format="default" sectionFormat="of" derivedContent="BT.2100-2"/> <bcp14>SHALL</bcp14> use the appropriate one
                 of the following values for the Media Type Parameter
                 "sampling":
                </t>
                <dl indent="15" spacing="compact" newline="false" pn="section-7.1-3.8.1.22.7">
                  <dt pn="section-7.1-3.8.1.22.7.1">ICtCp-4:4:4</dt>
                  <dd pn="section-7.1-3.8.1.22.7.2">(4:4:4 sampling)</dd>
                  <dt pn="section-7.1-3.8.1.22.7.3">ICtCp-4:2:2</dt>
                  <dd pn="section-7.1-3.8.1.22.7.4">(4:2:2 sampling)</dd>
                  <dt pn="section-7.1-3.8.1.22.7.5">ICtCp-4:2:0</dt>
                  <dd pn="section-7.1-3.8.1.22.7.6">
                    <t indent="0" pn="section-7.1-3.8.1.22.7.6.1">(4:2:0 sampling)</t>
                  </dd>
                </dl>
                <t indent="0" pn="section-7.1-3.8.1.22.8">
                 Signals utilizing the 4:4:4 R' G' B' or RGB signal format
                 (such as that of <xref target="BT.601-7" format="default" sectionFormat="of" derivedContent="BT.601-7"/>, <xref target="BT.709-6" format="default" sectionFormat="of" derivedContent="BT.709-6"/>,
                 <xref target="BT.2020-2" format="default" sectionFormat="of" derivedContent="BT.2020-2"/>, <xref target="BT.2100-2" format="default" sectionFormat="of" derivedContent="BT.2100-2"/>,
                 <xref target="SMPTE2065-1" format="default" sectionFormat="of" derivedContent="SMPTE2065-1"/>, or <xref target="SMPTE2065-3" format="default" sectionFormat="of" derivedContent="SMPTE2065-3"/>) <bcp14>SHALL</bcp14> use the
                 following value for the Media Type Parameter "sampling":
                </t>
                <dl indent="15" newline="false" spacing="normal" pn="section-7.1-3.8.1.22.9">
                  <dt pn="section-7.1-3.8.1.22.9.1">RGB</dt>
                  <dd pn="section-7.1-3.8.1.22.9.2">(RGB or R' G' B' samples)</dd>
                </dl>
                <t indent="0" pn="section-7.1-3.8.1.22.10">
                 Signals utilizing the 4:4:4 X' Y' Z' signal format (such as
                 defined in <xref target="SMPTE428-1" format="default" sectionFormat="of" derivedContent="SMPTE428-1"/>) <bcp14>SHALL</bcp14> use the following value for
                 the Media Type Parameter "sampling":
                </t>
                <dl indent="15" newline="false" spacing="normal" pn="section-7.1-3.8.1.22.11">
                  <dt pn="section-7.1-3.8.1.22.11.1">XYZ</dt>
                  <dd pn="section-7.1-3.8.1.22.11.2">(X' Y' Z' samples)</dd>
                </dl>
                <t indent="0" pn="section-7.1-3.8.1.22.12">
             Key signals as defined in <xref target="SMPTE157" format="default" sectionFormat="of" derivedContent="SMPTE157"/> <bcp14>SHALL</bcp14> use
             the value key for the Media Type Parameter "sampling". The key
             signal is represented as a single component:
                </t>
                <dl indent="15" newline="false" spacing="normal" pn="section-7.1-3.8.1.22.13">
                  <dt pn="section-7.1-3.8.1.22.13.1">KEY</dt>
                  <dd pn="section-7.1-3.8.1.22.13.2">(Samples of the key signal)</dd>
                </dl>
                <t indent="0" pn="section-7.1-3.8.1.22.14">
                 Signals utilizing a color sub-sampling other than what is
                 defined here <bcp14>SHALL</bcp14> use the following value for
                 the Media Type Parameter "sampling":
                </t>
                <dl indent="15" newline="false" spacing="normal" pn="section-7.1-3.8.1.22.15">
                  <dt pn="section-7.1-3.8.1.22.15.1">UNSPECIFIED</dt>
                  <dd pn="section-7.1-3.8.1.22.15.2">(Sampling signaled by the payload)</dd>
                </dl>
              </dd>
              <dt pn="section-7.1-3.8.1.23">colorimetry:</dt>
              <dd pn="section-7.1-3.8.1.24">
                <t indent="0" pn="section-7.1-3.8.1.24.1">
                 Specifies the system colorimetry used by the image
                 samples. Valid values and their specification are the
                 following:
                </t>
                <dl indent="15" newline="false" spacing="normal" pn="section-7.1-3.8.1.24.2">
                  <dt pn="section-7.1-3.8.1.24.2.1">BT601-5:</dt>
                  <dd pn="section-7.1-3.8.1.24.2.2">
                    <xref target="BT.601-5" format="default" sectionFormat="of" derivedContent="BT.601-5"/>.</dd>
                  <dt pn="section-7.1-3.8.1.24.2.3">BT709-2:</dt>
                  <dd pn="section-7.1-3.8.1.24.2.4">
                    <xref target="BT.709-2" format="default" sectionFormat="of" derivedContent="BT.709-2"/>.</dd>
                  <dt pn="section-7.1-3.8.1.24.2.5">SMPTE240M:</dt>
                  <dd pn="section-7.1-3.8.1.24.2.6">
                    <xref target="SMPTE240M" format="default" sectionFormat="of" derivedContent="SMPTE240M"/>.</dd>
                  <dt pn="section-7.1-3.8.1.24.2.7">BT601:</dt>
                  <dd pn="section-7.1-3.8.1.24.2.8">
                    <xref target="BT.601-7" format="default" sectionFormat="of" derivedContent="BT.601-7"/>.</dd>
                  <dt pn="section-7.1-3.8.1.24.2.9">BT709:</dt>
                  <dd pn="section-7.1-3.8.1.24.2.10">
                    <xref target="BT.709-6" format="default" sectionFormat="of" derivedContent="BT.709-6"/>.</dd>
                  <dt pn="section-7.1-3.8.1.24.2.11">BT2020:</dt>
                  <dd pn="section-7.1-3.8.1.24.2.12">
                    <xref target="BT.2020-2" format="default" sectionFormat="of" derivedContent="BT.2020-2"/>.</dd>
                  <dt pn="section-7.1-3.8.1.24.2.13">BT2100:</dt>
                  <dd pn="section-7.1-3.8.1.24.2.14">
                    <xref target="BT.2100-2" format="default" sectionFormat="of" derivedContent="BT.2100-2"/>, Table 2 titled "System colorimetry".</dd>
                  <dt pn="section-7.1-3.8.1.24.2.15">ST2065-1:</dt>
                  <dd pn="section-7.1-3.8.1.24.2.16">
                    <xref target="SMPTE2065-1" format="default" sectionFormat="of" derivedContent="SMPTE2065-1">Academy Color Encoding Specification (ACES)</xref>.</dd>
                  <dt pn="section-7.1-3.8.1.24.2.17">ST2065-3:</dt>
                  <dd pn="section-7.1-3.8.1.24.2.18">
                    <xref target="SMPTE2065-3" format="default" sectionFormat="of" derivedContent="SMPTE2065-3">Academy Density Exchange Encoding (ADX)</xref>.</dd>
                  <dt pn="section-7.1-3.8.1.24.2.19">XYZ:</dt>
                  <dd pn="section-7.1-3.8.1.24.2.20">
                    <xref target="ISO11664-1" format="default" sectionFormat="of" derivedContent="ISO11664-1"/>, section titled "1931 Observer".</dd>
                  <dt pn="section-7.1-3.8.1.24.2.21">UNSPECIFIED:</dt>
                  <dd pn="section-7.1-3.8.1.24.2.22">Colorimetry is signaled in the payload by the color specification box of
<xref target="ISO21122-3" format="default" sectionFormat="of" derivedContent="ISO21122-3"/>, or it must be manually coordinated between sender
and receiver.</dd>
                </dl>
                <t indent="0" pn="section-7.1-3.8.1.24.3">
                 Signals utilizing the <xref target="BT.2100-2" format="default" sectionFormat="of" derivedContent="BT.2100-2"/> colorimetry
                 <bcp14>SHOULD</bcp14> also signal the representational range using the
                 optional parameter RANGE defined below. Signals utilizing the
                 UNSPECIFIED colorimetry might require manual coordination between
                 the sender and the receiver.
                </t>
              </dd>
              <dt pn="section-7.1-3.8.1.25">TCS:</dt>
              <dd pn="section-7.1-3.8.1.26">
                <t indent="0" pn="section-7.1-3.8.1.26.1">
                 Transfer Characteristic System. This parameter specifies
                 the transfer characteristic system of the image samples.
                 Valid values and their specification are the following:
                </t>
                <dl indent="15" newline="false" spacing="normal" pn="section-7.1-3.8.1.26.2">
                  <dt pn="section-7.1-3.8.1.26.2.1">SDR:</dt>
                  <dd pn="section-7.1-3.8.1.26.2.2">Standard Dynamic Range video streams that utilize the Optical Electrical
Transfer Function (OETF) of <xref target="BT.709-6" format="default" sectionFormat="of" derivedContent="BT.709-6"/> or <xref target="BT.2020-2" format="default" sectionFormat="of" derivedContent="BT.2020-2"/>.
Such streams <bcp14>SHALL</bcp14> be assumed to target the Electro-Optical Transfer
Function (EOTF) specified in <xref target="BT.1886-0" format="default" sectionFormat="of" derivedContent="BT.1886-0"/>.</dd>
                  <dt pn="section-7.1-3.8.1.26.2.3">PQ:</dt>
                  <dd pn="section-7.1-3.8.1.26.2.4">High dynamic range video streams that utilize the Perceptual Quantization system
of <xref target="BT.2100-2" format="default" sectionFormat="of" derivedContent="BT.2100-2"/>. </dd>
                  <dt pn="section-7.1-3.8.1.26.2.5">HLG:</dt>
                  <dd pn="section-7.1-3.8.1.26.2.6">High dynamic range video streams that utilize the Hybrid Log-Gamma system
of <xref target="BT.2100-2" format="default" sectionFormat="of" derivedContent="BT.2100-2"/>.</dd>
                  <dt pn="section-7.1-3.8.1.26.2.7">UNSPECIFIED:</dt>
                  <dd pn="section-7.1-3.8.1.26.2.8">Video streams whose transfer characteristics are signaled by the payload
as specified in <xref target="ISO21122-3" format="default" sectionFormat="of" derivedContent="ISO21122-3"/>, or that must be manually
coordinated between sender and receiver.</dd>
                </dl>
              </dd>
              <dt pn="section-7.1-3.8.1.27">RANGE:</dt>
              <dd pn="section-7.1-3.8.1.28">
                 This parameter <bcp14>SHOULD</bcp14> be used to signal the encoding
                 range of the sample values within the stream. When paired with
                 <xref target="BT.2100-2" format="default" sectionFormat="of" derivedContent="BT.2100-2"/> colorimetry, this parameter has two allowed
                 values, NARROW and FULL, corresponding to the ranges specified
                 in TABLE 9 of <xref target="BT.2100-2" format="default" sectionFormat="of" derivedContent="BT.2100-2"/>. In any other context, this
                 parameter has three allowed values: NARROW, FULLPROTECT, and
                 FULL, which correspond to the ranges specified in
                 <xref target="SMPTE2077" format="default" sectionFormat="of" derivedContent="SMPTE2077"/>. In the absence of this parameter, and for all
                 but the UNSPECIFIED colorimetry, NARROW <bcp14>SHALL</bcp14> be the assumed
                 value. When paired with the UNSPECIFIED colorimetry, FULL
                 <bcp14>SHALL</bcp14> be the default assumed value.
              </dd>
            </dl>
          </dd>
          <dt pn="section-7.1-3.9">Encoding considerations:</dt>
          <dd pn="section-7.1-3.10">
             This media type is framed in RTP and contains binary data; see
             <xref target="RFC6838" sectionFormat="of" section="4.8" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6838#section-4.8" derivedContent="RFC6838"/>.
          </dd>
          <dt pn="section-7.1-3.11">Security considerations:</dt>
          <dd pn="section-7.1-3.12">
             See the <xref target="security" format="none" sectionFormat="of" derivedContent="">Security
             Considerations</xref> section of RFC 9134.
          </dd>
          <dt pn="section-7.1-3.13">Interoperability considerations:</dt>
          <dd pn="section-7.1-3.14">None</dd>
          <dt pn="section-7.1-3.15">Published specification:</dt>
          <dd pn="section-7.1-3.16">
             See the <xref target="references" format="none" sectionFormat="of" derivedContent="">References</xref>
             section of RFC 9134.
          </dd>
          <dt pn="section-7.1-3.17">Applications that use this media type:</dt>
          <dd pn="section-7.1-3.18">Any application that transmits video over RTP (like SMPTE ST 2110).</dd>
          <dt pn="section-7.1-3.19">Fragment identifier considerations:</dt>
          <dd pn="section-7.1-3.20">N/A</dd>
          <dt pn="section-7.1-3.21">Additional information:</dt>
          <dd pn="section-7.1-3.22">None</dd>
          <dt pn="section-7.1-3.23">Person &amp; email address to contact for further information:</dt>
          <dd pn="section-7.1-3.24">T. Bruylants &lt;rtp@intopix.com&gt; and T. Richter &lt;jpeg-xs-techsupport@iis.fraunhofer.de&gt;.</dd>
          <dt pn="section-7.1-3.25">Intended usage:</dt>
          <dd pn="section-7.1-3.26">COMMON</dd>
          <dt pn="section-7.1-3.27">Restrictions on usage:</dt>
          <dd pn="section-7.1-3.28">
             This media type depends on RTP framing; hence, it is only defined for transfer via <xref target="RFC3550" format="default" sectionFormat="of" derivedContent="RFC3550">RTP</xref>.</dd>
          <dt pn="section-7.1-3.29">Author:</dt>
          <dd pn="section-7.1-3.30">See the Authors' Addresses section of RFC 9134.</dd>
          <dt pn="section-7.1-3.31">Change controller:</dt>
          <dd pn="section-7.1-3.32">IETF Audio/Video Transport Working Group delegated from the IESG.
          </dd>
        </dl>
      </section>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-8">
      <name slugifiedName="name-sdp-parameters">SDP Parameters</name>
      <t indent="0" pn="section-8-1">
      A mapping of the parameters into the <xref target="RFC8866" format="default" sectionFormat="of" derivedContent="RFC8866">Session Description Protocol (SDP)</xref>
      is provided for applications that use SDP.
      </t>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-8.1">
        <name slugifiedName="name-mapping-of-payload-type-par">Mapping of Payload Type Parameters to SDP</name>
        <t indent="0" pn="section-8.1-1">
         The media type video/jxsv string is mapped to fields in the <xref target="RFC8866" format="default" sectionFormat="of" derivedContent="RFC8866">Session
         Description Protocol (SDP)</xref> as follows:
        </t>
        <dl newline="false" spacing="normal" indent="3" pn="section-8.1-2">
          <dt pn="section-8.1-2.1"/>
          <dd pn="section-8.1-2.2">        
             The media type ("video") goes in SDP "m=" as the media name.
          </dd>
          <dt pn="section-8.1-2.3"/>
          <dd pn="section-8.1-2.4">
             The media subtype ("jxsv") goes in SDP "a=rtpmap" as the encoding
             name, followed by a slash ("/") and the required parameter "rate"
             corresponding to the RTP timestamp clock rate (which for the payload
             format defined in this document <bcp14>SHALL</bcp14> be 90000).
          </dd>
          <dt pn="section-8.1-2.5"/>
          <dd pn="section-8.1-2.6">
             The required parameter "packetmode" and any of the additional
             optional parameters, as described in <xref target="media_type_def" format="default" sectionFormat="of" derivedContent="Section 7.1"/>, go in the SDP media
             format description, being the "a=fmtp" attribute (Format
             Parameters), by copying them directly from the media type string
             as a semicolon-separated list of parameter=value pairs.
          </dd>
        </dl>
        <t indent="0" pn="section-8.1-3">
         All parameters of the media format <bcp14>SHALL</bcp14> correspond to the
         parameters of the payload. In case of discrepancies between
         payload parameter values and SDP fields, the values from the
         payload data <bcp14>SHALL</bcp14> prevail.
        </t>
        <t indent="0" pn="section-8.1-4">
         The receiver <bcp14>SHALL</bcp14> ignore any parameter that is not defined in <xref target="media_type_def" format="default" sectionFormat="of" derivedContent="Section 7.1"/>.
        </t>
        <t indent="0" pn="section-8.1-5">
         An example SDP mapping for JPEG XS video is as follows:
        </t>
        <sourcecode type="sdp" markers="false" pn="section-8.1-6">
   m=video 30000 RTP/AVP 112
   a=rtpmap:112 jxsv/90000
   a=fmtp:112 packetmode=0;sampling=YCbCr-4:2:2;
              width=1920;height=1080;depth=10;
              colorimetry=BT709;TCS=SDR;RANGE=FULL;TP=2110TPNL
</sourcecode>
        <t indent="0" pn="section-8.1-7">
         In this example, a JPEG XS RTP stream is to be sent to UDP destination
         port 30000, with an RTP dynamic payload type of 112 and a media clock
         rate of 90000 Hz. Note that the "a=fmtp:" line has been wrapped to fit
         this page and will be a single long line in the SDP file. This example
         includes the TP parameter (as specified in <xref target="tsdt" format="default" sectionFormat="of" derivedContent="Section 5"/>).
        </t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-8.2">
        <name slugifiedName="name-usage-with-sdp-offer-answer">Usage with SDP Offer/Answer Model</name>
        <t indent="0" pn="section-8.2-1">
         When JPEG XS is offered over RTP using <xref target="RFC3264" format="default" sectionFormat="of" derivedContent="RFC3264">SDP in an
         offer/answer model</xref> for negotiation for unicast usage, the following
         limitations and rules apply:
        </t>
        <dl newline="false" spacing="normal" indent="3" pn="section-8.2-2">
          <dt pn="section-8.2-2.1"/>
          <dd pn="section-8.2-2.2">
             The "a=fmtp" attribute <bcp14>SHALL</bcp14> be present specifying the required
             parameter "packetmode" and <bcp14>MAY</bcp14> specify any of the
             optional parameters, as described in <xref target="media_type_def" format="default" sectionFormat="of" derivedContent="Section 7.1"/>.
          </dd>
          <dt pn="section-8.2-2.3"/>
          <dd pn="section-8.2-2.4">
             All parameters in the "a=fmtp" attribute indicate sending capabilities (i.e., properties of the payload).
          </dd>
          <dt pn="section-8.2-2.5"/>
          <dd pn="section-8.2-2.6">
             An answerer of the SDP is required to support all parameters and
             values of the parameters provided by the offerer; otherwise, the
             answerer <bcp14>SHALL</bcp14> reject the session. It falls on the
             offerer to use values that are expected to be supported by the
             answerer. If the answerer accepts the session, it
             <bcp14>SHALL</bcp14> reply with the exact same parameter values
             in the "a=fmtp" attribute as they were initially offered.
          </dd>
          <dt pn="section-8.2-2.7"/>
          <dd pn="section-8.2-2.8">
             The same RTP payload type number used in the offer
             <bcp14>SHOULD</bcp14> be used in the answer, as specified in
             <xref target="RFC3264" format="default" sectionFormat="of" derivedContent="RFC3264"/>.
          </dd>
        </dl>
      </section>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-9">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-9-1">
       IANA has registered the media type registration "video/jxsv"
       as specified in <xref target="media_type_def" format="default" sectionFormat="of" derivedContent="Section 7.1"/>.  The
       media type has also been added to the IANA registry for "RTP
       Payload Format Media Types" <eref brackets="angle" target="https://www.iana.org/assignments/rtp-parameters"/>.

      </t>
    </section>
    <section anchor="security" numbered="true" toc="include" removeInRFC="false" pn="section-10">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-10-1">
       RTP packets using the payload format defined in this memo
       are subject to the security considerations discussed in <xref target="RFC3550" format="default" sectionFormat="of" derivedContent="RFC3550"/>
       and in any applicable RTP profile such as <xref target="RFC3551" format="default" sectionFormat="of" derivedContent="RFC3551">RTP/AVP</xref>,
       <xref target="RFC4585" format="default" sectionFormat="of" derivedContent="RFC4585">RTP/AVPF</xref>,
       <xref target="RFC3711" format="default" sectionFormat="of" derivedContent="RFC3711">RTP/SAVP</xref>, or
       <xref target="RFC5124" format="default" sectionFormat="of" derivedContent="RFC5124">RTP/SAVPF</xref>. This implies
       that confidentiality of the media streams is achieved by encryption.
      </t>
      <t indent="0" pn="section-10-2">
       However, as <xref target="RFC7202" format="default" sectionFormat="of" derivedContent="RFC7202">"Securing the RTP Framework: Why RTP
       Does Not Mandate a Single Media Security Solution"</xref>
       discusses, it is not an RTP payload format's responsibility to
       discuss or mandate what solutions are used to meet the basic security
       goals like confidentiality, integrity, and source authenticity for
       RTP in general. This responsibility lies on anyone using RTP in an
       application. They can find guidance on available security mechanisms
       and important considerations in
       <xref target="RFC7201" format="default" sectionFormat="of" derivedContent="RFC7201">"Options for Securing RTP Sessions"</xref>.
       Applications <bcp14>SHOULD</bcp14> use one or more appropriate strong
       security mechanisms.
      </t>
      <t indent="0" pn="section-10-3">
       Implementations of this RTP payload format need to take appropriate
       security considerations into account.  It is important for the decoder
       to be robust against malicious or malformed payloads and ensure that
       they do not cause the decoder to overrun its allocated memory or otherwise
       misbehave. An overrun in allocated memory could lead to arbitrary code
       execution by an attacker. The same applies to the encoder, even though
       problems in encoders are typically rarer.
      </t>
      <t indent="0" pn="section-10-4">
       This payload format and the JPEG XS encoding do not exhibit any
       substantial non-uniformity, either in output or in complexity to perform
       the decoding operation; thus, they are unlikely to pose a denial-of-service
       threat due to the receipt of pathological datagrams.
      </t>
      <t indent="0" pn="section-10-5">
       This payload format and the JPEG XS encoding do not contain code that is executable.
      </t>
      <t indent="0" pn="section-10-6">


       It is important to note that high-definition (HD) or ultra-high-definition
       (UHD) video that is encoded with JPEG XS can have significant bandwidth
       requirements (typically more than 1 Gbps for UHD video, especially if
       using high framerate). This is sufficient to cause potential for denial
       of service if transmitted onto most currently available Internet paths.
      </t>
      <t indent="0" pn="section-10-7">
       Accordingly, if best-effort service is being used, users of this
       payload format <bcp14>SHALL</bcp14> monitor packet loss to ensure that the packet
       loss rate is within acceptable parameters. Packet loss is considered
       acceptable if a TCP flow across the same network path, and
       experiencing the same network conditions, would achieve an average
       throughput, measured on a reasonable timescale, that is not less than
       the RTP flow is achieving. This condition can be satisfied by
       implementing congestion control mechanisms to adapt the transmission
       rate (or the number of layers subscribed for a layered multicast
       session) or by arranging for a receiver to leave the session if the
       loss rate is unacceptably high.
      </t>
      <t indent="0" pn="section-10-8">
       This payload format may also be used in networks that provide
       quality-of-service guarantees. If enhanced service is being used,
       receivers <bcp14>SHOULD</bcp14> monitor packet loss to ensure that the service that
       was requested is actually being delivered. If it is not, then they
       <bcp14>SHOULD</bcp14> assume that they are receiving best-effort service and behave
       accordingly.
      </t>
    </section>
  </middle>
  <back>
    <references anchor="references" pn="section-11">
      <name slugifiedName="name-references">References</name>
      <references pn="section-11.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="ISO21122-1" quoteTitle="true" derivedAnchor="ISO21122-1">
          <front>
            <title>Information technology - JPEG XS low-latency lightweight image coding system - Part 1: Core coding system</title>
            <author>
              <organization showOnFrontPage="true">ISO/IEC</organization>
            </author>
          </front>
          <seriesInfo name="ISO/IEC" value="IS 21122-1"/>
        </reference>
        <reference anchor="ISO21122-2" quoteTitle="true" derivedAnchor="ISO21122-2">
          <front>
            <title>Information technology - JPEG XS low-latency lightweight image coding system - Part 2: Profiles and buffer models</title>
            <author>
              <organization showOnFrontPage="true">ISO/IEC</organization>
            </author>
          </front>
          <seriesInfo name="ISO/IEC" value="IS 21122-2"/>
        </reference>
        <reference anchor="ISO21122-3" quoteTitle="true" derivedAnchor="ISO21122-3">
          <front>
            <title>Information technology - JPEG XS low-latency lightweight image coding system - Part 3: Transport and container formats</title>
            <author>
              <organization showOnFrontPage="true">ISO/IEC</organization>
            </author>
          </front>
          <seriesInfo name="ISO/IEC" value="IS 21122-3"/>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" quoteTitle="true" derivedAnchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author initials="S." surname="Bradner" fullname="S. Bradner">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1997" month="March"/>
            <abstract>
              <t indent="0">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="RFC3264" target="https://www.rfc-editor.org/info/rfc3264" quoteTitle="true" derivedAnchor="RFC3264">
          <front>
            <title>An Offer/Answer Model with Session Description Protocol (SDP)</title>
            <author initials="J." surname="Rosenberg" fullname="J. Rosenberg">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="H." surname="Schulzrinne" fullname="H. Schulzrinne">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2002" month="June"/>
            <abstract>
              <t indent="0">This document defines a mechanism by which two entities can make use of the Session Description Protocol (SDP) to arrive at a common view of a multimedia session between them.  In the model, one participant offers the other a description of the desired session from their perspective, and the other participant answers with the desired session from their perspective.  This offer/answer model is most useful in unicast sessions where information from both participants is needed for the complete view of the session.  The offer/answer model is used by protocols like the Session Initiation Protocol (SIP).  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3264"/>
          <seriesInfo name="DOI" value="10.17487/RFC3264"/>
        </reference>
        <reference anchor="RFC3550" target="https://www.rfc-editor.org/info/rfc3550" quoteTitle="true" derivedAnchor="RFC3550">
          <front>
            <title>RTP: A Transport Protocol for Real-Time Applications</title>
            <author initials="H." surname="Schulzrinne" fullname="H. Schulzrinne">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Casner" fullname="S. Casner">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Frederick" fullname="R. Frederick">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="V." surname="Jacobson" fullname="V. Jacobson">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2003" month="July"/>
            <abstract>
              <t indent="0">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="RFC3551" target="https://www.rfc-editor.org/info/rfc3551" quoteTitle="true" derivedAnchor="RFC3551">
          <front>
            <title>RTP Profile for Audio and Video Conferences with Minimal Control</title>
            <author initials="H." surname="Schulzrinne" fullname="H. Schulzrinne">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Casner" fullname="S. Casner">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2003" month="July"/>
            <abstract>
              <t indent="0">This document describes a profile called "RTP/AVP" for the use of the real-time transport protocol (RTP), version 2, and the associated control protocol, RTCP, within audio and video multiparticipant conferences with minimal control.  It provides interpretations of generic fields within the RTP specification suitable for audio and video conferences.  In particular, this document defines a set of default mappings from payload type numbers to encodings. This document also describes how audio and video data may be carried within RTP.  It defines a set of standard encodings and their names when used within RTP.  The descriptions provide pointers to reference implementations and the detailed standards.  This document is meant as an aid for implementors of audio, video and other real-time multimedia applications. This memorandum obsoletes RFC 1890.  It is mostly backwards-compatible except for functions removed because two interoperable implementations were not found.  The additions to RFC 1890 codify existing practice in the use of payload formats under this profile and include new payload formats defined since RFC 1890 was published.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="65"/>
          <seriesInfo name="RFC" value="3551"/>
          <seriesInfo name="DOI" value="10.17487/RFC3551"/>
        </reference>
        <reference anchor="RFC4855" target="https://www.rfc-editor.org/info/rfc4855" quoteTitle="true" derivedAnchor="RFC4855">
          <front>
            <title>Media Type Registration of RTP Payload Formats</title>
            <author initials="S." surname="Casner" fullname="S. Casner">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2007" month="February"/>
            <abstract>
              <t indent="0">This document specifies the procedure to register RTP payload formats as audio, video, or other media subtype names.  This is useful in a text-based format description or control protocol to identify the type of an RTP transmission.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4855"/>
          <seriesInfo name="DOI" value="10.17487/RFC4855"/>
        </reference>
        <reference anchor="RFC6838" target="https://www.rfc-editor.org/info/rfc6838" quoteTitle="true" derivedAnchor="RFC6838">
          <front>
            <title>Media Type Specifications and Registration Procedures</title>
            <author initials="N." surname="Freed" fullname="N. Freed">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Klensin" fullname="J. Klensin">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Hansen" fullname="T. Hansen">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2013" month="January"/>
            <abstract>
              <t indent="0">This document defines procedures for the specification and registration of media types for use in HTTP, MIME, and other Internet protocols.  This memo documents an Internet Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="13"/>
          <seriesInfo name="RFC" value="6838"/>
          <seriesInfo name="DOI" value="10.17487/RFC6838"/>
        </reference>
        <reference anchor="RFC8083" target="https://www.rfc-editor.org/info/rfc8083" quoteTitle="true" derivedAnchor="RFC8083">
          <front>
            <title>Multimedia Congestion Control: Circuit Breakers for Unicast RTP Sessions</title>
            <author initials="C." surname="Perkins" fullname="C. Perkins">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="V." surname="Singh" fullname="V. Singh">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="March"/>
            <abstract>
              <t indent="0">The Real-time Transport Protocol (RTP) is widely used in telephony, video conferencing, and telepresence applications.  Such applications are often run on best-effort UDP/IP networks.  If congestion control is not implemented in these applications, then network congestion can lead to uncontrolled packet loss and a resulting deterioration of the user's multimedia experience.  The congestion control algorithm acts as a safety measure by stopping RTP flows from using excessive resources and protecting the network from overload.  At the time of this writing, however, while there are several proprietary solutions, there is no standard algorithm for congestion control of interactive RTP flows.</t>
              <t indent="0">This document does not propose a congestion control algorithm.  It instead defines a minimal set of RTP circuit breakers: conditions under which an RTP sender needs to stop transmitting media data to protect the network from excessive congestion.  It is expected that, in the absence of long-lived excessive congestion, RTP applications running on best-effort IP networks will be able to operate without triggering these circuit breakers.  To avoid triggering the RTP circuit breaker, any Standards Track congestion control algorithms defined for RTP will need to operate within the envelope set by these RTP circuit breaker algorithms.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8083"/>
          <seriesInfo name="DOI" value="10.17487/RFC8083"/>
        </reference>
        <reference anchor="RFC8085" target="https://www.rfc-editor.org/info/rfc8085" quoteTitle="true" derivedAnchor="RFC8085">
          <front>
            <title>UDP Usage Guidelines</title>
            <author initials="L." surname="Eggert" fullname="L. Eggert">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Fairhurst" fullname="G. Fairhurst">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Shepherd" fullname="G. Shepherd">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="March"/>
            <abstract>
              <t indent="0">The User Datagram Protocol (UDP) provides a minimal message-passing transport that has no inherent congestion control mechanisms.  This document provides guidelines on the use of UDP for the designers of applications, tunnels, and other protocols that use UDP.  Congestion control guidelines are a primary focus, but the document also provides guidance on other topics, including message sizes, reliability, checksums, middlebox traversal, the use of Explicit Congestion Notification (ECN), Differentiated Services Code Points (DSCPs), and ports.</t>
              <t indent="0">Because congestion control is critical to the stable operation of the Internet, applications and other protocols that choose to use UDP as an Internet transport must employ mechanisms to prevent congestion collapse and to establish some degree of fairness with concurrent traffic.  They may also need to implement additional mechanisms, depending on how they use UDP.</t>
              <t indent="0">Some guidance is also applicable to the design of other protocols (e.g., protocols layered directly on IP or via IP-based tunnels), especially when these protocols do not themselves provide congestion control.</t>
              <t indent="0">This document obsoletes RFC 5405 and adds guidelines for multicast UDP usage.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="145"/>
          <seriesInfo name="RFC" value="8085"/>
          <seriesInfo name="DOI" value="10.17487/RFC8085"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" quoteTitle="true" derivedAnchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author initials="B." surname="Leiba" fullname="B. Leiba">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="May"/>
            <abstract>
              <t indent="0">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="RFC8866" target="https://www.rfc-editor.org/info/rfc8866" quoteTitle="true" derivedAnchor="RFC8866">
          <front>
            <title>SDP: Session Description Protocol</title>
            <author initials="A." surname="Begen" fullname="A. Begen">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Kyzivat" fullname="P. Kyzivat">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Perkins" fullname="C. Perkins">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Handley" fullname="M. Handley">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2021" month="January"/>
            <abstract>
              <t indent="0">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>
      </references>
      <references pn="section-11.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="BT.1886-0" target="https://www.itu.int/rec/R-REC-BT.1886-0-201103-I/en" quoteTitle="true" derivedAnchor="BT.1886-0">
          <front>
            <title>Reference electro-optical transfer function for flat panel displays used in HDTV studio production</title>
            <author>
              <organization showOnFrontPage="true">ITU-R</organization>
            </author>
            <date year="2011" month="March"/>
          </front>
          <seriesInfo name="ITU-R Recommendation" value="BT.1886-0"/>
        </reference>
        <reference anchor="BT.2020-2" target="https://www.itu.int/rec/R-REC-BT.2020-2-201510-I/en" quoteTitle="true" derivedAnchor="BT.2020-2">
          <front>
            <title>Parameter values for ultra-high definition television systems for production and international programme exchange</title>
            <author>
              <organization showOnFrontPage="true">ITU-R</organization>
            </author>
            <date year="2015" month="October"/>
          </front>
          <seriesInfo name="ITU-R Recommendation" value="BT.2020-2"/>
        </reference>
        <reference anchor="BT.2100-2" target="https://www.itu.int/rec/R-REC-BT.2100-2-201807-I/en" quoteTitle="true" derivedAnchor="BT.2100-2">
          <front>
            <title>Image parameter values for high dynamic range television for use in production and international programme exchange</title>
            <author>
              <organization showOnFrontPage="true">ITU-R</organization>
            </author>
            <date year="2018" month="July"/>
          </front>
          <seriesInfo name="ITU-R Recommendation" value="BT.2100-2"/>
        </reference>
        <reference anchor="BT.601-5" target="https://www.itu.int/rec/R-REC-BT.601-5-199510-S/en" quoteTitle="true" derivedAnchor="BT.601-5">
          <front>
            <title>Studio encoding parameters of digital television for standard 4:3 and wide screen 16:9 aspect ratios</title>
            <author>
              <organization showOnFrontPage="true">ITU-R</organization>
            </author>
            <date year="1995" month="October"/>
          </front>
          <seriesInfo name="ITU-R Recommendation" value="BT.601-5"/>
        </reference>
        <reference anchor="BT.601-7" target="https://www.itu.int/rec/R-REC-BT.601-7-201103-I/en" quoteTitle="true" derivedAnchor="BT.601-7">
          <front>
            <title>Studio encoding parameters of digital television for standard 4:3 and wide screen 16:9 aspect ratios</title>
            <author>
              <organization showOnFrontPage="true">ITU-R</organization>
            </author>
            <date year="2011" month="March"/>
          </front>
          <seriesInfo name="ITU-R Recommendation" value="BT.601-7"/>
        </reference>
        <reference anchor="BT.709-2" target="https://www.itu.int/rec/R-REC-BT.709-2-199510-S/en" quoteTitle="true" derivedAnchor="BT.709-2">
          <front>
            <title>Parameter values for the HDTV standards for production and international programme exchange</title>
            <author>
              <organization showOnFrontPage="true">ITU-R</organization>
            </author>
            <date year="1995" month="October"/>
          </front>
          <seriesInfo name="ITU-R Recommendation" value="BT.709-2"/>
        </reference>
        <reference anchor="BT.709-6" target="https://www.itu.int/rec/R-REC-BT.709-6-201506-I/en" quoteTitle="true" derivedAnchor="BT.709-6">
          <front>
            <title>Parameter values for the HDTV standards for production and international programme exchange</title>
            <author>
              <organization showOnFrontPage="true">ITU-R</organization>
            </author>
            <date year="2015" month="June"/>
          </front>
          <seriesInfo name="ITU-R Recommendation" value="BT.709-6"/>
        </reference>
        <reference anchor="ISO11664-1" target="https://www.iso.org/standard/74164.html" quoteTitle="true" derivedAnchor="ISO11664-1">
          <front>
            <title>Colorimetry - Part 1: CIE standard colorimetric observers</title>
            <author>
              <organization showOnFrontPage="true">ISO/CIE</organization>
            </author>
            <date year="2019" month="June"/>
          </front>
          <seriesInfo name="ISO/CIE" value="IS 11664-1:2019"/>
        </reference>
        <reference anchor="RFC3711" target="https://www.rfc-editor.org/info/rfc3711" quoteTitle="true" derivedAnchor="RFC3711">
          <front>
            <title>The Secure Real-time Transport Protocol (SRTP)</title>
            <author initials="M." surname="Baugher" fullname="M. Baugher">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="McGrew" fullname="D. McGrew">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Naslund" fullname="M. Naslund">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="E." surname="Carrara" fullname="E. Carrara">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="K." surname="Norrman" fullname="K. Norrman">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2004" month="March"/>
            <abstract>
              <t indent="0">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="RFC4175" target="https://www.rfc-editor.org/info/rfc4175" quoteTitle="true" derivedAnchor="RFC4175">
          <front>
            <title>RTP Payload Format for Uncompressed Video</title>
            <author initials="L." surname="Gharai" fullname="L. Gharai">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Perkins" fullname="C. Perkins">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2005" month="September"/>
            <abstract>
              <t indent="0">This memo specifies a packetization scheme for encapsulating uncompressed video into a payload format for the Real-time Transport Protocol, RTP.  It supports a range of standard- and high-definition video formats, including common television formats such as ITU BT.601, and standards from the Society of Motion Picture and Television Engineers (SMPTE), such as SMPTE 274M and SMPTE 296M.  The format is designed to be applicable and extensible to new video formats as they are developed.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4175"/>
          <seriesInfo name="DOI" value="10.17487/RFC4175"/>
        </reference>
        <reference anchor="RFC4585" target="https://www.rfc-editor.org/info/rfc4585" quoteTitle="true" derivedAnchor="RFC4585">
          <front>
            <title>Extended RTP Profile for Real-time Transport Control Protocol (RTCP)-Based Feedback (RTP/AVPF)</title>
            <author initials="J." surname="Ott" fullname="J. Ott">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Wenger" fullname="S. Wenger">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="N." surname="Sato" fullname="N. Sato">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Burmeister" fullname="C. Burmeister">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Rey" fullname="J. Rey">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2006" month="July"/>
            <abstract>
              <t indent="0">Real-time media streams that use RTP are, to some degree, resilient against packet losses.  Receivers may use the base mechanisms of the Real-time Transport Control Protocol (RTCP) to report packet reception statistics and thus allow a sender to adapt its transmission behavior in the mid-term.  This is the sole means for feedback and feedback-based error repair (besides a few codec-specific mechanisms).  This document defines an extension to the Audio-visual Profile (AVP) that enables receivers to provide, statistically, more immediate feedback to the senders and thus allows for short-term adaptation and efficient feedback-based repair mechanisms to be implemented.  This early feedback profile (AVPF) maintains the AVP bandwidth constraints for RTCP and preserves scalability to large groups.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4585"/>
          <seriesInfo name="DOI" value="10.17487/RFC4585"/>
        </reference>
        <reference anchor="RFC5124" target="https://www.rfc-editor.org/info/rfc5124" quoteTitle="true" derivedAnchor="RFC5124">
          <front>
            <title>Extended Secure RTP Profile for Real-time Transport Control Protocol (RTCP)-Based Feedback (RTP/SAVPF)</title>
            <author initials="J." surname="Ott" fullname="J. Ott">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="E." surname="Carrara" fullname="E. Carrara">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2008" month="February"/>
            <abstract>
              <t indent="0">An RTP profile (SAVP) for secure real-time communications and another profile (AVPF) to provide timely feedback from the receivers to a sender are defined in RFC 3711 and RFC 4585, respectively.  This memo specifies the combination of both profiles to enable secure RTP communications with feedback.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5124"/>
          <seriesInfo name="DOI" value="10.17487/RFC5124"/>
        </reference>
        <reference anchor="RFC7201" target="https://www.rfc-editor.org/info/rfc7201" quoteTitle="true" derivedAnchor="RFC7201">
          <front>
            <title>Options for Securing RTP Sessions</title>
            <author initials="M." surname="Westerlund" fullname="M. Westerlund">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Perkins" fullname="C. Perkins">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2014" month="April"/>
            <abstract>
              <t indent="0">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="RFC7202" target="https://www.rfc-editor.org/info/rfc7202" quoteTitle="true" derivedAnchor="RFC7202">
          <front>
            <title>Securing the RTP Framework: Why RTP Does Not Mandate a Single Media Security Solution</title>
            <author initials="C." surname="Perkins" fullname="C. Perkins">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Westerlund" fullname="M. Westerlund">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2014" month="April"/>
            <abstract>
              <t indent="0">This memo discusses the problem of securing real-time multimedia sessions.  It also explains why the Real-time Transport Protocol (RTP) and the associated RTP Control Protocol (RTCP) do not mandate a single media security mechanism.  This is relevant for designers and reviewers of future RTP extensions to ensure that appropriate security mechanisms are mandated and that any such mechanisms are specified in a manner that conforms with the RTP architecture.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7202"/>
          <seriesInfo name="DOI" value="10.17487/RFC7202"/>
        </reference>
        <reference anchor="RFC8888" target="https://www.rfc-editor.org/info/rfc8888" quoteTitle="true" derivedAnchor="RFC8888">
          <front>
            <title>RTP Control Protocol (RTCP) Feedback for Congestion Control</title>
            <author initials="Z." surname="Sarker" fullname="Z. Sarker">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Perkins" fullname="C. Perkins">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="V." surname="Singh" fullname="V. Singh">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Ramalho" fullname="M. Ramalho">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2021" month="January"/>
            <abstract>
              <t indent="0">An effective RTP congestion control algorithm requires more fine-grained feedback on packet loss, timing, and Explicit Congestion Notification (ECN) marks than is provided by the standard RTP Control Protocol (RTCP) Sender Report (SR) and Receiver Report (RR) packets. This document describes an RTCP feedback message intended to enable congestion control for interactive real-time traffic using RTP. The feedback message is designed for use with a sender-based congestion control algorithm, in which the receiver of an RTP flow sends back to the sender RTCP feedback packets containing the information the sender needs to perform congestion control.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8888"/>
          <seriesInfo name="DOI" value="10.17487/RFC8888"/>
        </reference>
        <reference anchor="SMPTE157" target="https://ieeexplore.ieee.org/document/7290447" quoteTitle="true" derivedAnchor="SMPTE157">
          <front>
            <title>SMPTE Recommended Practice - Key and Alpha Signals</title>
            <author>
              <organization showOnFrontPage="true">SMPTE</organization>
            </author>
            <date year="2012" month="November"/>
          </front>
          <seriesInfo name="SMPTE" value="RP 157:2012"/>
          <seriesInfo name="DOI" value="10.1109/ICPST.1998.729044"/>
        </reference>
        <reference anchor="SMPTE2065-1" target="https://ieeexplore.ieee.org/document/9343931" quoteTitle="true" derivedAnchor="SMPTE2065-1">
          <front>
            <title>SMPTE Standard - Academy Color Encoding Specification (ACES)</title>
            <author>
              <organization showOnFrontPage="true">SMPTE</organization>
            </author>
            <date year="2021" month="January"/>
          </front>
          <seriesInfo name="SMPTE" value="ST 2065-1:2021"/>
          <seriesInfo name="DOI" value="10.5594/SMPTE.ST2065-1.2021"/>
        </reference>
        <reference anchor="SMPTE2065-3" target="https://ieeexplore.ieee.org/document/9286953" quoteTitle="true" derivedAnchor="SMPTE2065-3">
          <front>
            <title>SMPTE Standard - Academy Density Exchange Encoding (ADX) - Encoding Academy Printing Density (APD) Values</title>
            <author>
              <organization showOnFrontPage="true">SMPTE</organization>
            </author>
            <date year="2020" month="November"/>
          </front>
          <seriesInfo name="SMPTE" value="ST 2065-3:2020"/>
          <seriesInfo name="DOI" value="10.5594/SMPTE.ST2065-3.2020"/>
        </reference>
        <reference anchor="SMPTE2077" target="https://ieeexplore.ieee.org/document/7290588" quoteTitle="true" derivedAnchor="SMPTE2077">
          <front>
            <title>SMPTE Recommended Practice - Full-Range Image Mapping</title>
            <author>
              <organization showOnFrontPage="true">SMPTE</organization>
            </author>
            <date year="2013" month="November"/>
          </front>
          <seriesInfo name="SMPTE" value="RP 2077:2013"/>
          <seriesInfo name="DOI" value="10.5594/SMPTE.RP2077.2013"/>
        </reference>
        <reference anchor="SMPTE2110-21" target="https://ieeexplore.ieee.org/document/8165971" quoteTitle="true" derivedAnchor="SMPTE2110-21">
          <front>
            <title>SMPTE Standard - Professional Media Over Managed IP Networks: Traffic Shaping and Delivery Timing for Video</title>
            <author>
              <organization showOnFrontPage="true">SMPTE</organization>
            </author>
            <date year="2017" month="November"/>
          </front>
          <seriesInfo name="SMPTE" value="ST 2110-21:2017"/>
          <seriesInfo name="DOI" value="10.5594/SMPTE.ST2110-21.2017"/>
        </reference>
        <reference anchor="SMPTE240M" target="https://ieeexplore.ieee.org/document/7291461?arnumber=7291461" quoteTitle="true" derivedAnchor="SMPTE240M">
          <front>
            <title>SMPTE Standard - For Television - 1125-Line High-Definition Production Systems - Signal Parameters</title>
            <author>
              <organization showOnFrontPage="true">SMPTE</organization>
            </author>
            <date year="1999" month="November"/>
          </front>
          <seriesInfo name="SMPTE" value="ST 240M:1999"/>
          <seriesInfo name="DOI" value="10.5594/SMPTE.ST240.1999"/>
        </reference>
        <reference anchor="SMPTE428-1" target="https://ieeexplore.ieee.org/document/8709077" quoteTitle="true" derivedAnchor="SMPTE428-1">
          <front>
            <title>SMPTE Standard - D-Cinema Distribution Master - Image Characteristics</title>
            <author>
              <organization showOnFrontPage="true">SMPTE</organization>
            </author>
            <date year="2019" month="March"/>
          </front>
          <seriesInfo name="SMPTE" value="ST 428-1:2019"/>
          <seriesInfo name="DOI" value="10.5594/SMPTE.ST428-1.2019"/>
        </reference>
      </references>
    </references>
    <section numbered="false" toc="include" removeInRFC="false" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgments">Acknowledgments</name>
      <t indent="0" pn="section-appendix.a-1">
       The authors would like to thank the following people for their valuable
       contributions to this memo: <contact fullname="Sébastien Lugan"/>,
       <contact fullname="Arnaud Germain"/>, <contact fullname="Alexandre        Willème"/>, <contact fullname="Gaël Rouvroy"/>, <contact fullname="Siegfried Foessel"/>, and <contact fullname="Jean-Baptise        Lorent"/>.
      </t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.b">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author fullname="Tim Bruylants" initials="T" surname="Bruylants">
        <organization abbrev="intoPIX" showOnFrontPage="true">intoPIX S.A.</organization>
        <address>
          <postal>
            <street>Rue Emile Francqui, 9</street>
            <city>Mont-Saint-Guibert</city>
            <code>1435</code>
            <country>Belgium</country>
          </postal>
          <phone>+32 10 23 84 70</phone>
          <email>t.bruylants@intopix.com</email>
          <uri>https://www.intopix.com/</uri>
        </address>
      </author>
      <author fullname="Antonin Descampe" initials="A" surname="Descampe">
        <organization abbrev="UCLouvain" showOnFrontPage="true">Université catholique de Louvain</organization>
        <address>
          <postal>
            <extaddr>bte L2.03.02</extaddr>
            <street>Ruelle de la Lanterne Magique, 14</street>
            <city>Louvain-la-Neuve</city>
            <code>1348</code>
            <country>Belgium</country>
          </postal>
          <phone>+32 10 47 27 87</phone>
          <email>antonin.descampe@uclouvain.be</email>
          <uri>https://uclouvain.be/antonin.descampe</uri>
        </address>
      </author>
      <author fullname="Corentin Damman" initials="C" surname="Damman">
        <organization abbrev="intoPIX" showOnFrontPage="true">intoPIX S.A.</organization>
        <address>
          <postal>
            <street>Rue Emile Francqui, 9</street>
            <city>Mont-Saint-Guibert</city>
            <code>1435</code>
            <country>Belgium</country>
          </postal>
          <phone>+32 10 23 84 70</phone>
          <email>c.damman@intopix.com</email>
          <uri>https://www.intopix.com/</uri>
        </address>
      </author>
      <author fullname="Thomas Richter" initials="T" surname="Richter">
        <organization abbrev="Fraunhofer IIS" showOnFrontPage="true">Fraunhofer IIS</organization>
        <address>
          <postal>
            <street>Am Wolfsmantel 33</street>
            <city>Erlangen</city>
            <code>91048</code>
            <country>Germany</country>
          </postal>
          <phone>+49 9131 776 5126</phone>
          <email>thomas.richter@iis.fraunhofer.de</email>
          <uri>https://www.iis.fraunhofer.de/</uri>
        </address>
      </author>
    </section>
  </back>
</rfc>
