<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.23 (Ruby 3.2.3) -->
<?rfc docmapping="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-hsyang-avtcore-rtp-vdmc-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.27.0 -->
  <front>
    <title abbrev="RTP-Payload-VDMC">RTP Payload for V-DMC</title>
    <seriesInfo name="Internet-Draft" value="draft-hsyang-avtcore-rtp-vdmc-01"/>
    <author initials="" surname="HS Yang" fullname="Hyunsik Yang">
      <organization>InterDigital</organization>
      <address>
        <postal>
          <country>USA</country>
        </postal>
        <email>hyunsik.yang@interdigital.com</email>
      </address>
    </author>
    <author initials="X." surname="de Foy" fullname="Xavier de Foy">
      <organization>InterDigital</organization>
      <address>
        <postal>
          <country>Canada</country>
        </postal>
        <email>xavier.defoy@interdigital.com</email>
      </address>
    </author>
    <date/>
    <area>Transport</area>
    <workgroup>avtcore</workgroup>
    <abstract>
      <?line 89?>

<t>This memo outlines RTP payload formats for the Video-based Dynamic Mesh Coding (V-DMC), which comprises several types of components, such as a basemesh, AC-based displacements, 2D representations of attributes, and an atlas. This document focuses on describing the basemesh and displacement, while the RTP payload formats for the atlas and attributes are addressed in other documents. The RTP payload header formats enable the packetization of a basemesh or displacement Network Abstraction Layer (NAL) unit in an RTP packet payload as well as fragmentation of a NAL unit into multiple RTP packets.</t>
    </abstract>
  </front>
  <middle>
    <?line 93?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The advancements in 3D capture, modeling, and rendering have greatly expanded the presence of 3D content across various platforms and devices. However, when left uncompressed, 3D content can incur considerable costs in terms of storage and transmission.</t>
      <t>In response to this challenge, a visual volumetric video-based coding (V3C) standard <xref target="ISO.IEC.23090-05"/> has been developed to cater to the growing demand for efficient handling of 3D content. V3C is a generic mechanism for volumetric video coding, and it can be used by applications targeting volumetric content. A high-level description of V3C is provided by <xref target="I-D.ietf-avtcore-rtp-v3c"/>. V3C applications today target volumetric data types such as point clouds with Video-based Point Cloud Compression (V-PCC)<xref target="ISO.IEC.23090-05"/> and immersive video with depth, with MPEG Immersive Video (MIV) <xref target="ISO.IEC.23090-12"/>.</t>
      <t>3D mesh is another widely utilized technology for representing immersive content. 3D meshes are continuously evolving to become more sophisticated, inevitably leading to an increase in mesh size. Additionally, dynamic mesh sequences demand substantial data volumes due to the significant amount of temporal information they contain. With respect to this evolution, the V-DMC standard has been developed to facilitate the compression of 3D mesh data using the V3C standard <xref target="ISO.IEC.23090-05"/>.</t>
      <t>V-DMC is a V3C application which consists of several V3C sub-components: Atlas, Attributes, Basemesh, and AC-based Displacement. The RTP payloads for the Atlas and Attributes sub-components are described in <xref target="I-D.ietf-avtcore-rtp-v3c"/>, which defines an RTP payload format for the Atlas sub-component, and refers to existing 2D video RTP payload formats for attributes. In contrast, the Basemesh sub-component in V-DMC utilizes a new codec defined in appendix H of <xref target="ISO.IEC.23090-29"/>, requiring the definition of a new RTP payload. The AC-based displacement sub-component may be coded using Arithmetic Coding (AC) as specified in appendix J of <xref target="ISO.IEC.23090-29"/>, thus requiring the definition of a new RTP payload for AC-based displacement. The displacement sub-component may alternatively be coded using a 2D video codec, and in this case may be transported using 2D video RTP payload formats, (e.g., <xref target="RFC9328"/>, <xref target="RFC7798"/>). Therefore, this memo describes RTP payload headers for the basemesh codec and the AC-based displacement codec defined by MPEG in <xref target="ISO.IEC.23090-29"/> (appendix H and J, respectively).</t>
      <t>Furthermore, the basemesh and AC-based displacement RTP payload formats defined in this memo, and their codecs defined in <xref target="ISO.IEC.23090-29"/> appendix H and J respectively, can also be used in a non-V-DMC context. This document followed recommendations in <xref target="RFC8088"/> and <xref target="RFC2736"/> for RTP payload format writers.</t>
    </section>
    <section anchor="conventions">
      <name>Conventions</name>
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, as shown here.</t>
    </section>
    <section anchor="definition-and-abbreviations">
      <name>Definition, and abbreviations</name>
      <section anchor="general">
        <name>General</name>
        <t>This document uses the definitions of the Video-based dynamic mesh coding <xref target="ISO.IEC.23090-29"/>. Some of these terms are provided here for convenience.</t>
      </section>
      <section anchor="definitions-from-the-v-dmc-specification">
        <name>Definitions from the V-DMC specification</name>
        <t>The following definitions are added to the ones found in section 3.1.2 of <xref target="I-D.ietf-avtcore-rtp-v3c"/>.</t>
        <t>attribute map : image for mapping an attribute into a surface of 3D shape.</t>
        <t>basemesh: a simplified low-resolution approximation of the original mesh.</t>
        <t>displacement : a set of 3D vectors that are added to the vertices of the subdivided mesh to approximate closely the input mesh surface.</t>
        <t>submesh : independently decodable region of a basemesh</t>
        <t>subdivision : process of dividing the mesh faces into a number of sub-faces</t>
      </section>
      <section anchor="abbreviation">
        <name>Abbreviation</name>
        <t>The following abbreviations are added to the ones found in section 3.2 of <xref target="I-D.ietf-avtcore-rtp-v3c"/>.</t>
        <t>BMD Basemesh Data</t>
        <t>CDS Coded Displacement Sequence</t>
        <t>CBMS Coded BaseMesh Sequence</t>
        <t>LOD Level Of Detail</t>
        <t>V-DMC Video-based Dynamic Mesh Coding</t>
      </section>
    </section>
    <section anchor="vdmc-format-dsecription">
      <name>V-DMC format Description</name>
      <section anchor="overview-of-v-dmc-informative">
        <name>Overview of V-DMC (informative)</name>
        <t>V-DMC is a V3C application, which uses the framework described in section 4 of <xref target="I-D.ietf-avtcore-rtp-v3c"/>. As such, a V-DMC encoder converts a 3D representation into multiple representations, the V3C components, and generates associated data, the atlas, which documents this conversion and enables the reconstruction of the 3D representation by a decoder.</t>
        <t>The other V3C components used in V-DMC are a basemesh, AC-based displacement, and attributes providing properties such as mesh and connectivity information, vertex displacement information and texture or material information respectively. <xref target="_figure-v-dmc-structure"/> represents the 4 types of V3C components altogether used in V-DMC, including these V3C video components and the V3C atlas component.</t>
        <t>The basemesh component represents a simplified version of the detailed mesh describing the object. The simplified mesh can be encoded using any mesh codec. <xref target="ISO.IEC.23090-29"/> defines a static mesh codec that can used by the generic mechanism of the basemesh codec defined in <xref target="ISO.IEC.23090-29"/>. The AC-based displacement component provides displacement information which should be applied to the subdivided basemesh to obtain adetailed mesh. The displacement component can be encoded either using an arithmetic displacement codec described in <xref target="ISO.IEC.23090-29"/>, or alternatively it can be encoded as a V3C geometry video component i.e., V3C_GVD using any 2D video codec, indicated by the profile or using an SEI message. The attribute components can provide additional properties such as texture or material information and can be encoded by any video codec. Atlas component provides information to a V3C decoding and rendering system on how to perform inverse reconstruction. The atlas component codec is described in <xref target="ISO.IEC.23090-05"/> and an extension of the V3C atlas codec for V-DMC is described in <xref target="ISO.IEC.23090-29"/>.</t>
        <figure anchor="_figure-v-dmc-structure">
          <name>V-DMC streaming structure</name>
          <artwork><![CDATA[
+------------+ Atlas        +------------+
|   Atlas    | sub-bitstream|   Atlas    |
|  encoder   | ------------>|  decoder   |
+------------+              +------------+
+------------+ BaseMesh     +------------+
|  BaseMesh  | sub-bitstream|  BaseMesh  |
|  encoder   | ------------>|  decoder   |
+------------+              +------------+
+------------+ Displacement +------------+
|Displacement| sub-bitstream|Displacement|
|  encoder   | ------------>|  decoder   |
+------------+              +------------+
+------------+ Attribute    +------------+
|   Video    | sub-bitstream|   Video    |
|  encoder   | ------------>|  decoder   |
+------------+              +------------+
]]></artwork>
        </figure>
        <t>Similarly to other V3C applications, in V-DMC, the binary form of the V3C components, i.e., video bitstreams, basemesh bitstream and V3C atlas component, i.e., atlas bitstream, can be grouped and represented by a single V-DMC bitstream. The V-DMC bitstream is composed of a set of V3C units. Each V3C unit has a V3C unit header and a V3C unit payload. The V3C unit header describes the V3C unit type for the payload. V3C unit payload contains V3C video components, V3C non-video components such as basemesh and AC-based displacement, V3C atlas component or a V3C parameter set. V3C components, i.e., basemesh, displacement, or attribute components, correspond to NAL-based data units (e.g., NAL units for basemesh and AC-based displacement are defined in <xref target="ISO.IEC.23090-29"/>). The NAL units for attribute and video-based displacement are defined in therespective specification that could be decoded by appropriate decoders. An example of V-DMC bitstream consisting of a V3C parameter set, atlas bitstream, one video component bitstream (attribute) and two non-video component bitstreams(basemesh, displacement) is provided in <xref target="_figure-v-dmc-bitstream"/>.</t>
        <figure anchor="_figure-v-dmc-bitstream">
          <name>Example of V-DMC bitstream</name>
          <artwork><![CDATA[
  +-------------------+------------------+-------------------+
  | V3C Unit(V3C_VPS) | V3C Unit(V3C_AD) | V3C Unit(V3C_BMD) |
  +-------------------+------------------+-------------------+
  | V3C Unit(V3C_ADD) | V3C Unit(V3C_AVD)| V3C Unit(V3C_CAD) | ...
  +-------------------+------------------+-------------------+ 
]]></artwork>
        </figure>
      </section>
      <section anchor="v3c-parameter">
        <name>V3C Parameter set for V-DMC</name>
        <t>The V3C parameter set(VPS) is encapsulated in its own V3C unit, which allows decoupling the transmission of the V3C parameter set from the V3C video, non-video and atlas components. The VPS may be transmitted by external means (e.g., as a result of the capability exchange) or through a (reliable or unreliable) control protocol. Section 9 of <xref target="I-D.ietf-avtcore-rtp-v3c"/> provides information on how a V3C parameter set may be signaled as part of session description protocol.</t>
        <t>V-DMC, since it is a V3C application, uses the V3C parameter set and extends it with additional parameters, defined in <xref target="ISO.IEC.23090-29"/>. Section 9 of this memo provides information on these additional parameters and their signaling in SDP. V3C parameter set signaling in V-DMC may include V3C parameters described in section 9 of <xref target="I-D.ietf-avtcore-rtp-v3c"/> and in the section 9 of this memo.</t>
      </section>
      <section anchor="section4">
        <name>Atlas, Video and non-Video Components for V-DMC (informative)</name>
        <t>In a V-DMC bitstream the atlas component is identified by a vuh_unit_type field equal to V3C_AD, in the V3C unit header. The atlas component consists of atlas NAL units that define header and payload pairs, see <xref target="atlas-nal"/>. V-DMC video components are identified by a vuh_unit_type field equal to V3C_GVD or V3C_AVD. The base mesh information is present in a non-video component identified by V3C_BMD, which consists of basemesh NAL units that define header and payload pairs, see <xref target="basemesh-nal"/>. The AC-based displacement information is present in a non-video component identified by V3C_ADD. The component identified by V3C_ADD consists of displacement NAL units that define header and payload pairs, see <xref target="displ-nal"/>. The V3C video attribute components with vuh_unit_type V3C_AVD can be further differentiated by other fields in the V3C unit header such as vuh_attribute_index, vuh_attribute_partition_index, vuh_map_index and vuh_auxiliary_video_flag, which are described further below. By mapping V3C parameter set information to vuh_attribute_index, a V3C decoder identifies which attribute a given V3C video component contains, e.g., color.</t>
        <t>The information supplied by a V3C unit header should be provided in one form or another to a V3C decoder, e.g., as part of SDP as described in this memo in <xref target="session-descp"/> or in-band. The four-byte V3C unit header syntax and semantics are copied below as defined in <xref target="ISO.IEC.23090-29"/>, but the syntax is subject to change. Implementations should always refer to the latest specification of <xref target="ISO.IEC.23090-29"/>. The syntax of four-byte V3C unit header is provided here for informative purposes only.</t>
        <artwork><![CDATA[
   v3c_unit_header( ) {
    unsigned int(5) vuh_unit_type;
    if( vuh_unit_type == V3C_AVD || vuh_unit_type == V3C_GVD ||
       vuh_unit_type == V3C_OVD || vuh_unit_type == V3C_AD || 
       vuh_unit_type == V3C_CAD || vuh_unit_type == V3C_PVD || 
       vuh_unit_type == V3C_BMD || vuh_unit_type == V3C_ADD){ 
       unsigned int(4) vuh_v3c_parameter_set_id;
     }
     if( vuh_unit_type == V3C_AVD || vuh_unit_type == V3C_GVD ||
       vuh_unit_type == V3C_OVD || vuh_unit_type == V3C_AD ||
       vuh_unit_type == V3C_PVD || vuh_unit_type == V3C_BMD) ||
       vuh_unit_type == V3C_ADD ) {
       unsigned int(6) vuh_atlas_id;
     }
     if( vuh_unit_type == V3C_AVD ) {
       unsigned int(7) vuh_attribute_index;
       unsigned int(5) vuh_attribute_partition_index;
       unsigned int(4) vuh_map_index;
       unsigned int(1) vuh_auxiliary_video_flag;
     }
     else if( vuh_unit_type == V3C_GVD ) {
       unsigned int(4) vuh_map_index;
       unsigned int(1) vuh_auxiliary_video_flag;
       bit(12) vuh_reserved_zero_12bits;
     }
     else if( vuh_unit_type == V3C_OVD || vuh_unit_type == V3C_AD ||
         vuh_unit_type == V3C_PVD || vuh_unit_type == V3C_BMD ||
         vuh_unit_type == V3C_ADD) {
       bit(17) vuh_reserved_zero_17bits;
     }
     else if( vuh_unit_type == V3C_CAD ) {
       bit(23) vuh_reserved_zero_23bits;
     }
     else {
       bit(27) vuh_reserved_zero_27bits;
     }
   }

]]></artwork>
        <t>vuh_unit_type indicates the V3C unit type for the V3C component as specified in <xref target="ISO.IEC.23090-29"/>. As a convenience, the mapping table from vuh_unit_type values to semantics is copied below in <xref target="_figure-v3ctype"/>.</t>
        <figure anchor="_figure-v3ctype">
          <name>V3C component for V-DMC</name>
          <artwork><![CDATA[
+--------+----------+--------------------+------------------------+
|vuh unit|Identifier|    V3C unit type   |     Description        |
|  type  |          |                    |                        |
+--------+----------+--------------------+------------------------+
|   0    | V3C_VPS  |  V3C parameter set |   V3C level parameters |
+--------+----------+--------------------+------------------------+
|   1    | V3C_AD   |     Atlas data     |   Atlas information    |
+--------+----------+--------------------+------------------------+
|   2    | V3C_OVD  |Occupancy video data|   (Not used in V-DMC)  |
+--------+----------+--------------------+------------------------+
|   3    | V3C_GVD  |Geometry video data |Displacement information|
|        |          |                    |(Displacement when      |
|        |          |                    |using a video-based     |
|        |          |                    |codec)                  |
+--------+----------+--------------------+------------------------+
|   4    | V3C_AVD  |Attribute video data|  Attribute information |
+--------+----------+--------------------+------------------------+
|   5    | V3C_PVD  | Packed video data  |  (Not used in V-DMC)   |
+--------+----------+--------------------+------------------------+
|   6    |          | Common atlas data  |Information that is     |
|        |          |                    |common for atlases      |
|        | V3C_CAD  |                    |in a CVS(Specified in   |
|        |          |                    |ISO/IEC 23090-12)       |
+--------+----------+--------------------+------------------------+
|   7    | V3C_BMD  |   Basemesh data    |  Basemesh information  |
+--------+----------+--------------------+------------------------+
|        | V3C_ADD  |  Arithmetic coded  |Displacement information|
|   8    |          | displacement data  |                        |
+--------+----------+--------------------+------------------------+

]]></artwork>
        </figure>
        <t>vuh_v3c_parameter_set_id specifies the value of
   vps_v3c_parameter_set_id for the active V3C VPS.</t>
        <t>vuh_atlas_id specifies the ID of the atlas that corresponds to the
   current V3C unit.</t>
        <t>vuh_attribute_index indicates the index of the attribute data carried
   in the Attribute Video Data unit.</t>
        <t>vuh_attribute_partition_index indicates the index of the attribute
   dimension group carried in the attribute video data unit.</t>
        <t>vuh_map_index when present indicates the map index of the current
   geometry or attribute stream.  When not present, the map index of the
   current geometry or attribute sub-bitstream is derived based on the
   type of the sub-bitstream.</t>
        <t>vuh_auxiliary_video_flag equal indicates if the associated geometry
   or attribute video data unit is a RAW and/or EOM coded points video
   only sub-bitstream.</t>
        <section anchor="atlas-nal">
          <name>Atlas NAL units</name>
          <t>The atlas component provides information to a V3C decoding and/or rendering system on how to perform inverse reconstruction. V-DMC uses an atlas component based on the V3C atlas, including new V-DMC specific parameters defined in <xref target="ISO.IEC.23090-29"/>, which do not impact the payload format. For example, the V-DMC atlas component indicates how to perform the subdivision of the basemesh, how to apply the AC-based displacement information to the subdivided mesh vertices and how to apply attributes to the reconstructed mesh.</t>
          <t>The V3C atlas RTP payload format described in <xref target="ISO.IEC.23090-05"/> can be used to transport the V-DMC atlas component. Section 4.3.2 of <xref target="I-D.ietf-avtcore-rtp-v3c"/> includes a copy of the syntax and semantics of the V3C atlas NAL unit.</t>
        </section>
        <section anchor="basemesh-nal-units">
          <name>Basemesh NAL units</name>
          <t>The basemesh component is a simplified low-resolution approximation of the original mesh. The basemesh component can be encoded using any mesh codec, including the basemesh codec described in <xref target="ISO.IEC.23090-29"/>. When employing the basemesh codec described in <xref target="ISO.IEC.23090-29"/>, data can be transmitted using the RTP payload format specified in <xref target="section5"/>.</t>
          <t>The basemesh NAL unit (nal_unit(BmNumBytesInNalUnit)) is a byte-aligned syntax structure defined by <xref target="ISO.IEC.23090-29"/> to carry base mesh data. A basemesh NAL unit always contains a 16-bit NAL unit header (bmesh_nal_unit_header()), which indicates among other things the type of the NAL unit (bmesh_nal_unit_type). The payload of a NAL unit refers to the NAL unit excluding the NAL unit header. The basemesh NAL unit syntax and semantics are copied here as defined in <xref target="ISO.IEC.23090-29"/>.</t>
          <artwork><![CDATA[
bmesh_nal_unit_header( ) {
    bit(1) bmesh_nal_forbidden_zero_bit
    bit(6) bmesh_nal_unit_type
    bit(6) bmesh_nal_layer_id
    bit(3) bmesh_nal_temporal_id_plus1
}
nal_unit(BmNumBytesInNalUnit){
    bmesh_nal_unit_header();
    BmNumBytesInRbsp = 0;
    for( i = 2; i < BmNumBytesInNalUnit; i++ )
      bit(8) rbsp_byte[ BmNumBytesInRbsp++ ];
}
]]></artwork>
          <t>bmesh_nal_forbidden_zero_bit MUST be equal to 0.</t>
          <t>bmesh_nal_unit_type specifies the type of the RBSP data structure contained in the NAL unit as specified in <xref target="ISO.IEC.23090-29"/>. In particular, the basemesh NAL unit types supported are specified in Table H.1 of  <xref target="ISO.IEC.23090-29"/>.</t>
          <t>bmesh_nal_layer_id specifies the identifier of the layer to which an BMCL NAL unit belongs or the identifier of a layer to which a non-BMCL NAL unit applies. The value of bmesh_nal_layer_id shall be in the range of 0 to 62, inclusive.</t>
          <t>bmesh_nal_temporal_id_plus1 minus 1 specifies a temporal identifier for the NAL unit. The value of nal_temporal_id_plus1 shall not be equal to 0.</t>
        </section>
        <section anchor="ac-based-displacement-nal-units">
          <name>AC-based Displacement NAL units</name>
          <t>The displacement component provides displacement information, that are used to apply deformation on a mesh over time. The displacement component can be encoded using the arithmetic codec defined in Annex J of <xref target="ISO.IEC.23090-29"/>, or alternatively can be encoded as V3C geometry video component using traditional 2D video codec, when employing a 2D codec, data can be transmitted using the RTP payload format specified for the codec. When employing the arithmetic codec defined in Annex J of <xref target="ISO.IEC.23090-29"/>, data can be transmitted using the RTP payload format specified in <xref target="section6"/>.</t>
          <t>The displacement NAL unit (nal_unit(NumBytesInNalUnit)) is a byte-aligned syntax structure defined by <xref target="ISO.IEC.23090-29"/> to carry displacement data. A displacement NAL unit always contains a 16-bit NAL unit header (displ_nal_unit_header()), which indicates among other things the type of the NAL unit (displ_nal_unit_type). The payload of a NAL unit refers to the NAL unit excluding the NAL unit header.  The displacement NAL unit syntax and semantics are copied here as defined in <xref target="ISO.IEC.23090-29"/>.</t>
          <artwork><![CDATA[
displ_nal_unit_header( ) {
    bit(1) displ_nal_forbidden_zero_bit
    bit(6) displ_nal_unit_type
    bit(6) displ_nal_layer_id
    bit(3) displ_nal_temporal_id_plus1
}
nal_unit(NumBytesInNalUnit){
    displ_nal_unit_header();
    NumBytesInRbsp = 0;
    for( i = 2; i < NumBytesInNalUnit; i++ )
      bit(8) rbsp_byte[ NumBytesInRbsp++ ];
}
]]></artwork>
          <t>displ_nal_forbidden_zero_bit MUST be equal to 0.</t>
          <t>displ_nal_unit_type specifies the type of the RBSP data structure contained in the NAL unit as specified in <xref target="ISO.IEC.23090-29"/>. In particular, the AC-based displacement NAL unit types supported are specified in Table J.1 of  <xref target="ISO.IEC.23090-29"/>.</t>
          <t>displ_nal_layer_id is specifies the identifier of the layer to which an DCL NAL unit belongs or the identifier of a layer to which a non-DCL NAL unit applies. The value of displ_nal_layer_id shall be in the range of 0 to 62, inclusive.</t>
          <t>displ_nal_temporal_id_plus1 is minus 1 specifies a temporal identifier for the NAL unit. The value of
nal_temporal_id_plus1 shall not be equal to 0.</t>
        </section>
      </section>
    </section>
    <section anchor="section5">
      <name>Payload format for V-DMC Basemesh</name>
      <section anchor="general-1">
        <name>General</name>
        <t>This section describes details related to the RTP payload format definitions for the V-DMC basemesh codec defined in Annex H of <xref target="ISO.IEC.23090-29"/>. Aspects related to RTP header, RTP payload header and general payload structure are considered.</t>
      </section>
      <section anchor="rtp-header-usage">
        <name>RTP header Usage</name>
        <t>The RTP header is defined in <xref target="RFC3550"/> and represented in <xref target="_figure-rtpheader"/>. Some of the header field values are interpreted as follows.</t>
        <figure anchor="_figure-rtpheader">
          <name>RTP header for V-DMC Basemesh</name>
          <artwork><![CDATA[
   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>Marker bit (M): 1 bit</t>
        <t>Set for the last packet of the access unit, carried in the current
   RTP stream.  This is in line with the normal use of the M bit in
   video formats to allow an efficient playout buffer handling.</t>
        <t>Payload type (PT): 7 bits</t>
        <t>The assignment of a payload type MUST be performed either through the profile used or in a dynamic way.</t>
        <t>Sequence Number (SN): 16 bits</t>
        <t>Set and used in accordance with <xref target="RFC3550"/></t>
        <t>Timestamp : 32 bits</t>
        <t>The RTP timestamp is set to the sampling timestamp of the content.  A
   90 kHz clock rate MUST be used.</t>
        <t>If the NAL unit has no timing properties of its own (e.g., 
   set and SEI NAL units), the RTP timestamp MUST be set to the RTP 
   timestamp of the coded basemesh of the access unit in which the NAL
   unit (according to Section H of <xref target="ISO.IEC.23090-29"/> is included.</t>
        <t>Receivers MUST use the RTP timestamp for the display process, even
   when the bitstream contains basemesh frame timing SEI messages as
   specified in <xref target="ISO.IEC.23090-29"/>.</t>
        <t>Synchronization source (SSRC): 32 bits</t>
        <t>Used to identify the source of the RTP packets. By definition a
   single SSRC is used for all parts of a single bitstream. 
   The remaining RTP header fields are used as specified in <xref target="RFC3550"/>.</t>
      </section>
      <section anchor="basemesh-nal">
        <name>RTP payload header for Basemesh</name>
        <t>The RTP Payload Header follows the RTP header. <xref target="_figure-rtpheader-base"/> describes RTP Payload Header.</t>
        <figure anchor="_figure-rtpheader-base">
          <name>RTP Payload header for Basemesh</name>
          <artwork><![CDATA[
      0                   1
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |F|    NUT    |    NLI    | TID |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
        <t>F : bmesh_nal_forbidden_zero_bit specified in <xref target="ISO.IEC.23090-29"/> MUST be equal to 0.</t>
        <t>NUT : bmesh_nal_unit_type as specified in <xref target="ISO.IEC.23090-29"/> define the type of the RBSP data structure contained in the NAL unit as specified in <xref target="ISO.IEC.23090-29"/>. In particular, the basemesh NAL unit types supported are specified in Table H.1 of <xref target="ISO.IEC.23090-29"/>.</t>
        <t>NLI : bmesh_nal_layer_id as specified in <xref target="ISO.IEC.23090-29"/> defines the identifier of the layer to which an BMCL NAL unit belongs or the identifier of a layer to which a non-BMCL NAL unit applies. The value of nal_layer_id shall be in the range of 0 to 62, inclusive.</t>
        <t>TID : bmesh_nal_temporal_id_plus1 minus 1 as specified in <xref target="ISO.IEC.23090-29"/> defines a temporal identifier for the NAL unit. The value of bmesh_nal_temporal_id_plus1 shall not be equal to 0.</t>
      </section>
      <section anchor="payload-structures">
        <name>Payload structures</name>
        <section anchor="general-2">
          <name>General</name>
          <t>Three different types of RTP packet payload structures are specified. A receiver can identify the payload structure by the first two bytes of the RTP packet payload, which co-serves as the RTP payload header. These two bytes are always structured as a NAL unit header. The NAL unit type field indicates which structure is present in the payload.</t>
          <t>The three different payload structures are as follows:</t>
          <t>Single NAL Unit Packet: Contains a single NAL unit in the payload. This payload structure is specified in <xref target="bmesh-single"/>.</t>
          <t>Aggregation Packet: Contains multiple NAL units in a single RTP payload. This payload structure is specified in <xref target="bmesh-aggr"/>.</t>
          <t>Fragmentation Unit: Contains a subset of a single NAL unit. This payload structure is specified in <xref target="bmesh-frag"/>.</t>
          <t>NOTE: (informative) This memo does not limit the size of NAL units encapsulated in NAL unit packets and fragmentation units. <xref target="ISO.IEC.23090-29"/> does not restrict the maximum size of a NAL unit directly either. Instead, a NAL unit sample stream format may be used, which provides flexibility to signal NAL unit size up to UINT64_MAX bytes.</t>
        </section>
        <section anchor="bmesh-single">
          <name>Single NAL unit packet</name>
          <t>Single NAL unit packet contains exactly one NAL unit and consists of an RTP payload header and following conditional fields: 16-bit DONL and 16-bit bmesh-sm-id. The rest of the payload data contain the NAL unit payload data (excluding the NAL unit header). Single NAL unit packet MUST only contain atlas NAL units of the types defined in Table H.1 of <xref target="ISO.IEC.23090-29"/>. The structure of the single NAL unit packet is shown below in <xref target="_figure-bsnal-unit"/>.</t>
          <figure anchor="_figure-bsnal-unit">
            <name>Single NAL unit packet for Basemesh</name>
            <artwork><![CDATA[
   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
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |      RTP payload header       |      DONL (conditional)       |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |       bmesh-sm-id (cond)      |                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               |
  |                                                               |
  |                        NAL unit data                          |
  |                                                               |
  |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                               :...OPTIONAL RTP padding        |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
          <t>RTP payload header MUST be an exact copy of the NAL unit header of the contained NAL unit.</t>
          <t>A NAL unit stream composed by de-packetizing single NAL unit packets in RTP sequence number order MUST conform to the NAL unit decoding order, when DONL is not present.</t>
          <t>The DONL field, when present, specifies the value of the 16-bit decoding order number of the contained NAL unit. If sprop-max-don-diff is greater than 0 for any of the RTP streams, the DONL field MUST be present, and the variable DONL for the contained NAL unit is derived as equal to the value of the DONL field. Otherwise (sprop-max-don-diff is equal to 0 for all the RTP streams), the DONL field MUST NOT be present.</t>
          <t>The bmesh-sm-id field, when present, specifies the 16-bit submesh identifier for the NAL unit, as signaled in basemesh header defined in <xref target="ISO.IEC.23090-29"/>. If sprop-bmesh-sm-id-pres is equal to 1 and RTP payload header NUT is in range 0-29, inclusive, the bmesh-sm-id field MUST be present. Otherwise, the bmesh-sm-id field MUST NOT be present.</t>
          <t>NOTE: (informative) Only values for NAL unit type (NUT) in range 0-29, inclusive, are allocated for bash mesh submesh layer unit data in <xref target="ISO.IEC.23090-29"/>.</t>
        </section>
        <section anchor="bmesh-aggr">
          <name>Aggregation packet</name>
          <t>Aggregation Packets (APs) enable the reduction of packetization overhead for small NAL units, such as most of the non-BMCL NAL units, which are often only a few octets in size.</t>
          <t>Aggregation packets MAY be used wrap multiple NAL units belonging to the same access unit in a single RTP payload. The first two bytes of the AP MUST contain RTP payload header. The NAL unit type (NUT) for the NAL unit header contained in the RTP payload header MUST be equal to 45, which falls in the unspecified range of the NAL unit types defined in <xref target="ISO.IEC.23090-29"/>. AP MAY contain a conditional bmesh-sm-id field. AP MUST contain two or more aggregation units. The structure of AP is shown in <xref target="_figure-bsnal-ap"/>.</t>
          <figure anchor="_figure-bsnal-ap">
            <name>Aggregation Packet (AP) for Basemesh</name>
            <artwork><![CDATA[
   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
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |  RTP payload header (NUT=45)  |       bmesh-sm-id (cond)      |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                                                               |
  |                  Two or more aggregation units                |
  |                                                               |
  |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                               :...OPTIONAL RTP padding        |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
          <t>The fields in the payload header are set as follows. The F bit MUST be equal to 0 if the F bit of each aggregated NAL unit is equal to zero; otherwise, it MUST be equal to 1. The NUT field MUST be equal to 45. The value of NLI MUST be equal to the lowest value of NLI of all the aggregated NAL units. The value of TID MUST be the lowest value of TID of all the aggregated NAL units.</t>
          <t>All BMCL NAL units in an aggregation packet have the same TID value since they belong to the same access unit. However, the packet MAY contain non-BMCL NAL units for which the TID value in the NAL unit header MAY be different than the TID value of the BMCL NAL units in the same AP.</t>
          <t>The bmesh-sm-id field, when present, specifies the 16-bit basemesh identifier for all BMCL NAL units in the AP. If sprop-bmesh-sm-id-pres is equal to 1, the bmesh-sm-id field MUST be present. Otherwise, the bmesh-sm-id field MUST NOT be present.</t>
          <t>AP MUST carry at least two aggregation units (AU) and can carry as many aggregation units as necessary. However, the total amount of data in an AP MUST fit into an IP packet, and the size SHOULD be chosen so that the resulting IP packet is smaller than the MTU size so to avoid IP layer fragmentation. The structure of the AU depends both on the presence of the decoding order number, the sequence order of the AU in the AP and the presence of bmesh-sm-id field. The structure of an AU is shown in <xref target="_figure-ap-unit"/>.</t>
          <figure anchor="_figure-ap-unit">
            <name>Aggregation Unit (AU) for Basemesh</name>
            <artwork><![CDATA[
   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
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |  DOND (cond)  /  DONL (cond)  |       bmesh-sm-id (cond)      |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |            NALU size          |                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               |
  |                                                               |
  |                            NAL unit                           |
  |                                                               |
  |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
          <t>If sprop-max-don-diff is greater than 0 for any of the RTP streams, an AU begins with the DOND / DONL field. The first AU in the AP contains DONL field, which specifies the 16-bit value of the decoding order number of the aggregated NAL unit. The variable DON for the aggregated NAL unit is derived as equal to the value of the DONL field. All subsequent AUs in the AP MUST contain an (8-bit) DOND field, which specifies the difference between the decoding order number values of the current aggregated NAL unit and the preceding aggregated NAL unit in the same AP. The variable DON for the aggregated NAL unit is derived as equal to the DON of the preceding aggregated NAL unit in the same AP plus the value of the DOND field plus 1 modulo 65536.</t>
          <t>When sprop-max-don-diff is equal to 0 for all the RTP streams, DOND / DONL fields MUST NOT be present in an aggregation unit. The aggregation units MUST be stored in the aggregation packet so that the decoding order of the containing NAL units is preserved. This means that the first aggregation unit in the aggregation packet SHOULD contain the NAL unit that SHOULD be decoded first.</t>
          <t>If sprop-bmesh-sm-id-pres is equal to 2 and the AU NAL unit header type is in range 0-29, inclusive, the 16-bit bmesh-sm-id field MUST be present in the aggregation unit after the conditional DOND/DONL field. Otherwise bmesh-sm-id field MUST NOT be present in the aggregation unit.</t>
          <t>The conditional fields of the aggregation unit are followed by a 16-bit NALU size field, which provides the size of the NAL unit (in bytes) in the aggregation unit. The remainder of the data in the aggregation unit SHOULD contain the NAL unit (including the unmodified NAL unit header).</t>
        </section>
        <section anchor="bmesh-frag">
          <name>Fragmentation unit</name>
          <t>Fragmentation Units (FUs) are introduced to enable fragmenting a single NAL unit into multiple RTP packets, possibly without co-operation or knowledge of the encoder. A fragment of a NAL unit consists of an integer number of consecutive octets of that NAL unit. Fragments of the same NAL unit MUST be sent in consecutive order with ascending RTP sequence numbers (with no other RTP packets within the same RTP stream being sent between the first and last fragment.</t>
          <t>When a NAL unit is fragmented and conveyed within FUs, it is referred to as a fragmented NAL unit. Aggregation packets MUST NOT be fragmented. FUs MUST NOT be nested; i.e., an FU MUST NOT contain a subset of another FU. The RTP header timestamp of an RTP packet carrying an FU is set to the NALU-time of the fragmented NAL unit.</t>
          <t>A FU consists of an RTP payload header with NUT equal to a 46, an 8-bit FU header, a conditional 16-bit DONL field, a conditional 16-bit bmesh-sm-id field and an FU payload. The structure of an FU is illustrated below in <xref target="_figure-aggr-unit"/>.</t>
          <figure anchor="_figure-aggr-unit">
            <name>Fragmentation Unit for Basemesh</name>
            <artwork><![CDATA[
  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
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |  RTP payload header (NUT=46)  |   FU header   |  DONL (cond)  |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |  DONL (cond)  |    bmesh-sm-id  (cond)        |               |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+               |
 |                                                               |
 |                          FU payload                           |
 |                                                               |
 |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                               :...OPTIONAL RTP padding        |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
        </section>
      </section>
      <section anchor="packetization-and-de-packetization-rules">
        <name>Packetization and De-packetization Rules</name>
        <t>The following packetization rules apply for V-DMC data:</t>
        <ul spacing="normal">
          <li>
            <t>If sprop-max-don-diff is greater than 0 for any of the RTP streams, the transmission order of NAL units carried in the RTP stream MAY be different than the NAL unit decoding order and the NAL unit output order. Otherwise (sprop-max-don-diff is equal to 0 for all the RTP streams), the transmission order of NAL units carried in the RTP stream MUST be the same as the NAL unit decoding order.</t>
          </li>
          <li>
            <t>A NAL unit of a small size SHOULD be encapsulated in an aggregation packet together with one or more other NAL units in order to avoid the unnecessary packetization overhead for small NAL units. For example, non-BMCL NAL units such as access unit delimiters, parameter sets, or SEI NAL units are typically small and can often be aggregated with BMCL NAL units without violating MTU size constraints.</t>
          </li>
          <li>
            <t>Each non-BMCL NAL unit SHOULD, when possible, from an MTU size perspective, be encapsulated in an aggregation packet together with its associated BMCL NAL unit, as typically a non-BMCL NAL unit would be meaningless without the associated BMCL NAL unit being available.</t>
          </li>
          <li>
            <t>For carrying exactly one NAL unit in an RTP packet, a single NAL unit packet MUST be used</t>
          </li>
        </ul>
        <t>The general concept behind de-packetization is to get the NAL units out of the RTP packets in an RTP stream and all RTP streams the RTP stream depends on, if any, and pass them to the decoder in the NAL unit decoding order.
The de-packetization process is implementation dependent. Therefore, the following de-packetization rules SHOULD be taken as an example.</t>
        <ul spacing="normal">
          <li>
            <t>All normal RTP mechanisms related to buffer management apply. In particular, duplicated or outdated RTP packets (as indicated by the RTP sequence number and the RTP timestamp) are removed. To determine the exact time for decoding, factors such as a possible intentional delay to allow for proper inter-stream synchronization must be factored in.</t>
          </li>
          <li>
            <t>NAL units with NAL unit type values in the range of 0 to 44, inclusive, MAY be passed to the decoder. NAL-unit-like structures with NAL unit type values in the range of 45 to 63, inclusive, MUST NOT be passed to the decoder.</t>
          </li>
          <li>
            <t>When sprop-max-don-diff is equal to 0 for the received RTP stream, the NAL units carried in the RTP stream MAY be directly passed to the decoder in their transmission order, which is identical to their decoding order.</t>
          </li>
          <li>
            <t>When sprop-max-don-diff is greater than 0 for any of the received RTP streams, the received NAL units need to be arranged into decoding order before handing them over to the decoder.</t>
          </li>
          <li>
            <t>For further de-packetization examples, the reader is referred to Section 6 of <xref target="RFC7798"/>.</t>
          </li>
        </ul>
        <t>Regarding the packetization of V3C video component data, the respective RTP video payload specification(s) define how packetization and de-packetization SHOULD be handled.</t>
      </section>
    </section>
    <section anchor="section6">
      <name>Payload format for V-DMC Arithmetic-coded Displacement</name>
      <section anchor="general-3">
        <name>General</name>
        <t>This section describes details related to the RTP payload format definitions for the V-DMC arithmetic displacement codec defined in Annex J of <xref target="ISO.IEC.23090-29"/>. Aspects related to RTP header, RTP payload header and general payload structure are considered. As discussed in <xref target="section4"/>, a V-DMC stream may alternatively use another displacement codec, in which case  the RTP payload described in this section would not be applicable.</t>
      </section>
      <section anchor="rtp-header-usage-1">
        <name>RTP header Usage</name>
        <t>The RTP header is defined in <xref target="RFC3550"/> and represented in <xref target="_figure-rtpheader2"/>. Some of the header field values are interpreted as follows.</t>
        <figure anchor="_figure-rtpheader2">
          <name>RTP header for V-DMC Displacement</name>
          <artwork><![CDATA[
   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>Marker bit (M): 1 bit</t>
        <t>Set for the last packet of the access unit, carried in the current
   RTP stream.  This is in line with the normal use of the M bit in
   video formats to allow an efficient playout buffer handling.</t>
        <t>Payload type (PT): 7 bits</t>
        <t>The assignment of a payload type MUST be performed either through the profile used or in a dynamic way.</t>
        <t>Sequence Number (SN): 16 bits</t>
        <t>Set and used in accordance with <xref target="RFC3550"/></t>
        <t>Timestamp : 32 bits</t>
        <t>The RTP timestamp is set to the sampling timestamp of the content.  A
   90 kHz clock rate MUST be used.</t>
        <t>If the NAL unit has no timing properties of its own (e.g., 
   set and SEI NAL units), the RTP timestamp MUST be set to the RTP 
   timestamp of the coded displacement of the access unit in which the NAL
   unit (according to Section J of <xref target="ISO.IEC.23090-29"/> is included.</t>
        <t>Receivers MUST use the RTP timestamp for the display process, even
   when the bitstream contains displacement frame timing SEI messages as
   specified in <xref target="ISO.IEC.23090-29"/>.</t>
        <t>Synchronization source (SSRC): 32 bits</t>
        <t>Used to identify the source of the RTP packets. By definition a
   single SSRC is used for all parts of a single bitstream. 
   The remaining RTP header fields are used as specified in <xref target="RFC3550"/>.</t>
      </section>
      <section anchor="displ-nal">
        <name>RTP Payload header for AC-based Displacement</name>
        <t>The RTP Payload Header follows the RTP header. <xref target="_figure-rtpheader-dp"/> describes RTP Payload Header.</t>
        <figure anchor="_figure-rtpheader-dp">
          <name>RTP header for AC-based Displacement.</name>
          <artwork><![CDATA[
  0                   1
  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |F|    NUT    |    NLI    | TID |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
        <t>F : displ_nal_forbidden_zero_bit specified in <xref target="ISO.IEC.23090-29"/> MUST be equal to 0.</t>
        <t>NUT : displ_nal_unit_type as specified in <xref target="ISO.IEC.23090-29"/> define the type of the RBSP data structure contained in the NAL unit as specified in <xref target="ISO.IEC.23090-29"/>. In particular, the AC-based displacement NAL unit types supported are specified in Table J.1 of <xref target="ISO.IEC.23090-29"/>.</t>
        <t>NLI : displ_nal_layer_id as specified in <xref target="ISO.IEC.23090-29"/> defines the identifier of the layer to which an DCL NAL unit belongs or the identifier of a layer to which a non-DCL NAL unit applies. The value of displ_nal_layer_id shall be in the range of 0 to 62, inclusive.</t>
        <t>TID : displ_nal_temporal_id_plus1 minus 1 as specified in <xref target="ISO.IEC.23090-29"/> defines a temporal identifier for the NAL unit. The value of displ_nal_temporal_id_plus1 shall not be equal to 0.</t>
      </section>
      <section anchor="payload-structures-1">
        <name>Payload structures</name>
        <section anchor="general-4">
          <name>General</name>
          <t>Three different types of RTP packet payload structures are specified. A receiver can identify the payload structure by the first two bytes of the RTP packet payload, which co-serves as the RTP payload header. These two bytes are always structured as a NAL unit header. The NAL unit type field indicates which structure is present in the payload.</t>
          <t>The three different payload structures are as follows:</t>
          <t>Single NAL Unit Packet: Contains a single NAL unit in the payload. This payload structure is specified in <xref target="displ-nalp"/></t>
          <t>Aggregation Packet: Contains multiple NAL units in a single RTP payload. This payload structure is specified in <xref target="disp-aggp"/>.</t>
          <t>Fragmentation Unit: Contains a subset of a single NAL unit. This payload structure is specified in <xref target="displ-fragu"/>.</t>
          <t>NOTE: (informative) This memo does not limit the size of NAL units encapsulated in NAL unit packets and fragmentation units. <xref target="ISO.IEC.23090-29"/> does not restrict the maximum size of a NAL unit directly either. Instead, a NAL unit sample stream format may be used, which provides flexibility to signal NAL unit size up to UINT64_MAXUINT64_MAX bytes.</t>
        </section>
        <section anchor="displ-nalp">
          <name>Single NAL unit packet</name>
          <t>Single NAL unit packet contains exactly one NAL unit, and consists of an RTP payload header and following conditional fields: 16-bit DONL and 16-bit vdmcd-id. The rest of the payload data contain the NAL unit payload data (excluding the NAL unit header). Single NAL unit packet MUST only contain atlas NAL units of the types defined in Table J.1 of <xref target="ISO.IEC.23090-29"/>. The structure of the single NAL unit packet is shown below in <xref target="_figure-singlenal-dp"/></t>
          <figure anchor="_figure-singlenal-dp">
            <name>Single NAL unit packet for AC-based Displacement</name>
            <artwork><![CDATA[
   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
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |      RTP payload header       |      DONL (conditional)       |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |     vdmcd-id (cond)           |                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               |
  |                                                               |
  |                        NAL unit data                          |
  |                                                               |
  |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                               :...OPTIONAL RTP padding        |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
          <t>RTP payload header MUST be an exact copy of the NAL unit header of the contained NAL unit.</t>
          <t>A NAL unit stream composed by de-packetizing single NAL unit packets in RTP sequence number order MUST conform to the NAL unit decoding order, when DONL is not present.</t>
          <t>The DONL field, when present, specifies the value of the 16-bit decoding order number of the contained NAL unit. If sprop-max-don-diff is greater than 0 for any of the RTP streams, the DONL field MUST be present, and the variable DONL for the contained NAL unit is derived as equal to the value of the DONL field. Otherwise (sprop-max-don-diff is equal to 0 for all the RTP streams), the DONL field MUST NOT be present.</t>
          <t>The vdmcd-id field, when present, specifies the 16-bit displacement identifier for the NAL unit, as signaled in displacement header defined in <xref target="ISO.IEC.23090-29"/>. If sprop-vdmcd-id-pres is equal to 1 and RTP payload header NUT is in range 0-29, inclusive, the vdmcd-id field MUST be present. Otherwise, the vdmcd-id field MUST NOT be present.</t>
          <t>NOTE: (informative) Only values for NAL unit type (NUT) in range 0-29, inclusive, are allocated for AC-based displacement layer unit data in <xref target="ISO.IEC.23090-29"/>.</t>
        </section>
        <section anchor="disp-aggp">
          <name>Aggregation packet</name>
          <t>Aggregation Packets (APs) enable the reduction of packetization overhead for small NAL units, such as most of the non-DCL NAL units, which are often only a few octets in size.</t>
          <t>Aggregation packets MAY be used wrap multiple NAL units belonging to the same access unit in a single RTP payload. The first two bytes of the AP MUST contain RTP payload header. The NAL unit type (NUT) for the NAL unit header contained in the RTP payload header MUST be equal to 47, which falls in the unspecified range of the NAL unit types defined in <xref target="ISO.IEC.23090-29"/>. AP MAY contain a conditional vdmcd-id field. AP MUST contain two or more aggregation units. The structure of AP is shown in <xref target="_figure-aggrepacket-dp"/>.</t>
          <figure anchor="_figure-aggrepacket-dp">
            <name>Aggregation packet for AC-based displacement</name>
            <artwork><![CDATA[
   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
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |  RTP payload header (NUT=47)  |         vdmcd-id (cond)       |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                                                               |
  |                  Two or more aggregation units                |
  |                                                               |
  |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                               :...OPTIONAL RTP padding        |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
          <t>The fields in the payload header are set as follows. The F bit MUST be equal to 0 if the F bit of each aggregated NAL unit is equal to zero; otherwise, it MUST be equal to 1. The NUT field MUST be equal to 47. The value of NLI MUST be equal to the lowest value of NLI of all the aggregated NAL units. The value of TID MUST be the lowest value of TID of all the aggregated NAL units.</t>
          <t>All DCL NAL units in an aggregation packet have the same TID value since they belong to the same access unit. However, the packet MAY contain non-DCL NAL units for which the TID value in the NAL unit header MAY be different than the TID value of the DCL NAL units in the same AP.</t>
          <t>The vdmcd-id field, when present, specifies the 16-bit displacement identifier for all DCL NAL units in the AP. If sprop-vdmcd-id-pres is equal to 1, the vdmcd-id field MUST be present. Otherwise, the vdmcd-id field MUST NOT be present.</t>
          <t>AP MUST carry at least two aggregation units (AU) and can carry as many aggregation units as necessary. However, the total amount of data in an AP MUST fit into an IP packet, and the size SHOULD be chosen so that the resulting IP packet is smaller than the MTU size so to avoid IP layer fragmentation. The structure of the AU depends both on the presence of the decoding order number, the sequence order of the AU in the AP and the presence of vdmcd-id field. The structure of an AU is shown in <xref target="_figure-aggreunit-dp"/>.</t>
          <figure anchor="_figure-aggreunit-dp">
            <name>Aggregation unit for AC-based Displacement</name>
            <artwork><![CDATA[
   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
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |  DOND (cond)  /  DONL (cond)  |        vdmcd-id (cond)        |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |            NALU size          |                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               |
  |                                                               |
  |                            NAL unit                           |
  |                                                               |
  |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
          <t>If sprop-max-don-diff is greater than 0 for any of the RTP streams, an AU begins with the DOND / DONL field. The first AU in the AP contains DONL field, which specifies the 16-bit value of the decoding order number of the aggregated NAL unit. The variable DON for the aggregated NAL unit is derived as equal to the value of the DONL field. All subsequent AUs in the AP MUST contain an (8-bit) DOND field, which specifies the difference between the decoding order number values of the current aggregated NAL unit and the preceding aggregated NAL unit in the same AP. The variable DON for the aggregated NAL unit is derived as equal to the DON of the preceding aggregated NAL unit in the same AP plus the value of the DOND field plus 1 modulo 65536.</t>
          <t>When sprop-max-don-diff is equal to 0 for all the RTP streams, DOND / DONL fields MUST NOT be present in an aggregation unit. The aggregation units MUST be stored in the aggregation packet so that the decoding order of the containing NAL units is preserved. This means that the first aggregation unit in the aggregation packet SHOULD contain the NAL unit that SHOULD be decoded first.</t>
          <t>If sprop-vdmcd-id-pres is equal to 2 and the AU NAL unit header type is in range 0-29, inclusive, the 16-bit vdmcd-id field MUST be present in the aggregation unit after the conditional DOND/DONL field. Otherwise vdmcd-id field MUST NOT be present in the aggregation unit.</t>
          <t>The conditional fields of the aggregation unit are followed by a 16-bit NALU size field, which provides the size of the NAL unit (in bytes) in the aggregation unit. The remainder of the data in the aggregation unit SHOULD contain the NAL unit (including the unmodified NAL unit header).</t>
        </section>
        <section anchor="displ-fragu">
          <name>Fragmentation unit</name>
          <t>Fragmentation Units (FUs) are introduced to enable fragmenting a single NAL unit into multiple RTP packets, possibly without co-operation or knowledge of the encoder. A fragment of a NAL unit consists of an integer number of consecutive octets of that NAL unit. Fragments of the same NAL unit MUST be sent in consecutive order with ascending RTP sequence numbers (with no other RTP packets within the same RTP stream being sent between the first and last fragment.</t>
          <t>When a NAL unit is fragmented and conveyed within FUs, it is referred to as a fragmented NAL unit. Aggregation packets MUST NOT be fragmented. FUs MUST NOT be nested; i.e., an FU MUST NOT contain a subset of another FU. The RTP header timestamp of an RTP packet carrying an FU is set to the NALU-time of the fragmented NAL unit.
A FU consists of an RTP payload header with NUT equal to a  63, an 8-bit FU header, a conditional 16-bit DONL field, a conditional 16-bit vdmc-id field and an FU payload. The structure of an FU is illustrated below in <xref target="_figure-frag-dp"/>.</t>
          <figure anchor="_figure-frag-dp">
            <name>Fragmentation Unit for Displacement</name>
            <artwork><![CDATA[
  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
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |  RTP payload header (NUT=46)  |   FU header   |  DONL (cond)  |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |  DONL (cond)  |      vdmcd-id (cond)          |               |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+               |
 |                                                               |
 |                          FU payload                           |
 |                                                               |
 |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                               :...OPTIONAL RTP padding        |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 
]]></artwork>
          </figure>
        </section>
      </section>
      <section anchor="packetization-and-de-packetization-rules-1">
        <name>Packetization and De-packetization Rules</name>
        <t>The following packetization rules apply for V-DMC data:
 -      If sprop-max-don-diff is greater than 0 for any of the RTP streams, the transmission order of NAL units carried in the RTP stream MAY be different than the NAL unit decoding order and the NAL unit output order. Otherwise (sprop-max-don-diff is equal to 0 for all the RTP streams), the transmission order of NAL units carried in the RTP stream MUST be the same as the NAL unit decoding order.
 -      A NAL unit of a small size SHOULD be encapsulated in an aggregation packet together with one or more other NAL units in order to avoid the unnecessary packetization overhead for small NAL units. For example, non-DCL NAL units such as access unit delimiters, parameter sets, or SEI NAL units are typically small and can often be aggregated with DCL NAL units without violating MTU size constraints.
 -      Each non-DCL NAL unit SHOULD, when possible, from an MTU size perspective, be encapsulated in an aggregation packet together with its associated DCL NAL unit, as typically a non-DCL NAL unit would be meaningless without the associated DCL NAL unit being available.
 -      For carrying exactly one NAL unit in an RTP packet, a single NAL unit packet MUST be used</t>
        <t>The general concept behind de-packetization is to get the NAL units out of the RTP packets in an RTP stream and all RTP streams the RTP stream depends on, if any, and pass them to the decoder in the NAL unit decoding order.</t>
        <t>The de-packetization process is implementation dependent. Therefore, the following de-packetization rules SHOULD be taken as an example.</t>
        <ul spacing="normal">
          <li>
            <t>All normal RTP mechanisms related to buffer management apply. In particular, duplicated or outdated RTP packets (as indicated by the RTP sequence number and the RTP timestamp) are removed. To determine the exact time for decoding, factors such as a possible intentional delay to allow for proper inter-stream synchronization must be factored in.</t>
          </li>
          <li>
            <t>NAL units with NAL unit type values in the range of 0 to 44, inclusive, MAY be passed to the decoder. NAL-unit-like structures with NAL unit type values in the range of 45 to 63, inclusive, MUST NOT be passed to the decoder.</t>
          </li>
          <li>
            <t>When sprop-max-don-diff is equal to 0 for the received RTP stream, the NAL units carried in the RTP stream MAY be directly passed to the decoder in their transmission order, which is identical to their decoding order.</t>
          </li>
          <li>
            <t>When sprop-max-don-diff is greater than 0 for any of the received RTP streams, the received NAL units need to be arranged into decoding order before handing them over to the decoder.</t>
          </li>
          <li>
            <t>For further de-packetization examples, the reader is referred to Section 6 of <xref target="RFC7798"/>.</t>
          </li>
        </ul>
        <t>Regarding the packetization of V3C video component data, the respective RTP video payload specification(s) define how packetization and de-packetization SHOULD be handled.</t>
      </section>
    </section>
    <section anchor="payload-format-parameters">
      <name>Payload Format Parameters</name>
      <t>This section describes payload format optional parameters.  A mapping of the parameters into the Session Description Protocol (SDP) <xref target="RFC8866"/> is also provided for applications that use SDP. Equivalent parameters could be defined elsewhere for use with control protocols that do not use SDP.</t>
      <section anchor="media-type-bm">
        <name>Media Type Registration for Basemesh</name>
        <t>The receiver MUST ignore any parameter unspecified in this memo.</t>
        <t>Type name: application</t>
        <t>Subtype name: bmesh</t>
        <t>Required parameters : N/A</t>
        <t>Optional parameters: bmesh-codec-idc, bmesh-level-idc, bmesh-lod, bmesh-seq-set, bmesh-tier-flag, bmesh-toolset-idc, sprop-bmesh-sei, sprop-bmesh-sm-id, sprop-bmesh-sm-id-pres</t>
        <t>Optional parameters inherited from V3C: sprop-v3c-unit-header, sprop-v3c-unit-type, sprop-v3c-vps-id, sprop-v3c-atlas-id, sprop-v3c-attr-idx, sprop-v3c-attr-part-idx, sprop-v3c-map-idx, sprop-v3c-aux-video-flag, sprop-v3c-parameter-set, sprop-v3c-tile-id, sprop-v3c-tile-id-pres, sprop-v3c-atlas-data, sprop-v3c-common-atlas-data, sprop-v3c-sei, v3c-ptl-level-idc, v3c-ptl-tier-flag, v3c-ptl-codec-idc, v3c-ptl-toolset-idc, v3c-ptl-rec-idc and sprop-max-don-diff</t>
        <t>Encoding considerations: This type is only defined for transfer via RTP <xref target="RFC3550"/>.</t>
        <t>Security considerations: Please see <xref target="security"/>.</t>
        <t>Interoperability considerations: N/A</t>
        <t>Published specification: Please refer to <xref target="ISO.IEC.23090-29"/></t>
        <t>Applications that use this media type: Any application that relies on V-DMC-based media services over RTP.</t>
        <t>Additional information: N/A</t>
        <t>Person &amp; email address to contact for further information:</t>
        <t>Intended usage: COMMON</t>
        <t>Restrictions on usage: N/A</t>
        <t>Author: See Authors' Addresses section of this memo.</t>
        <t>Change controller: IETF avtcore@ietf.org</t>
        <t>Provisional registration? (standards tree only): No</t>
      </section>
      <section anchor="media-type-displ">
        <name>Media Type Registration for Displacement</name>
        <t>The receiver MUST ignore any parameter unspecified in this memo.</t>
        <t>Type name: application</t>
        <t>Subtype name: vdmcd</t>
        <t>Required parameters : N/A</t>
        <t>Optional parameters: vdmcd-codec-idc, vdmcd-level-idc, vdmcd-lod, vdmcd-seq-set,vdmcd-tier-flag, vdmcd-toolset-idc, sprop-vdmcd-sei, sprop-vdmcd-id,sprop-vdmcd-id-pres</t>
        <t>Optional parameters inherited from V3C: sprop-v3c-unit-header, sprop-v3c-unit-type, sprop-v3c-vps-id, sprop-v3c-atlas-id, sprop-v3c-attr-idx, sprop-v3c-attr-part-idx, sprop-v3c-map-idx, sprop-v3c-aux-video-flag, sprop-v3c-parameter-set, sprop-v3c-tile-id, sprop-v3c-tile-id-pres, sprop-v3c-atlas-data, sprop-v3c-common-atlas-data, sprop-v3c-sei, v3c-ptl-level-idc, v3c-ptl-tier-flag, v3c-ptl-codec-idc, v3c-ptl-toolset-idc, v3c-ptl-rec-idc and sprop-max-don-diff</t>
        <t>Encoding considerations: This type is only defined for transfer via RTP <xref target="RFC3550"/>.</t>
        <t>Security considerations: Please see <xref target="security"/>.</t>
        <t>Interoperability considerations: N/A</t>
        <t>Published specification: Please refer to <xref target="ISO.IEC.23090-29"/></t>
        <t>Applications that use this media type: Any application that relies on V-DMC-based media services over RTP.</t>
        <t>Additional information: N/A</t>
        <t>Person &amp; email address to contact for further information:</t>
        <t>Intended usage: COMMON</t>
        <t>Restrictions on usage: N/A</t>
        <t>Author: See Authors' Addresses section of this memo.</t>
        <t>Change controller: IETF avtcore@ietf.org</t>
        <t>Provisional registration? (standards tree only): No</t>
      </section>
      <section anchor="optional-param">
        <name>Optional Parameters Definition</name>
        <t>Optional parameters definition in section 7.2. of <xref target="I-D.ietf-avtcore-rtp-v3c"/> are applicable, unless updated in this section, which describes new and updated optional parameters definitions.</t>
        <t><strong>Parameters defined in <xref target="I-D.ietf-avtcore-rtp-v3c"/></strong></t>
        <t>The possible values of sprop-v3c-unit-type are updated by this memo. sprop-v3c-unit-type specifies a V3C unit type value corresponding to vuh_unit_type defined in <xref target="ISO.IEC.23090-29"/>, i.e., it defines V3C sub-bitstream type. <xref target="ISO.IEC.23090-29"/> only introduces new values and does not modify the values previously defined in <xref target="ISO.IEC.23090-05"/>. The remaining V3C parameters can also be utilized in the V-DMC bitstream if necessary.</t>
        <t><strong>optional parameters for Basemesh are defined in this memo</strong></t>
        <t>bmesh-codec-idc:</t>
        <t>bmesh-codec-idc indicates the codec group profile component to which the CVS conforms. It corresponds to bmptl_profile_codec_group_idc defined in <xref target="ISO.IEC.23090-29"/>.</t>
        <t>bmesh-level-idc:</t>
        <t>bmesh-level-idc indicates a level to which the coded V3C sequence (CVS) conforms. It corresponds to bmptl_level_idc defined in <xref target="ISO.IEC.23090-29"/>.</t>
        <t>bmesh-lod:</t>
        <t>bmesh-lod specifies the support for signalling and adjusting the level of detail in the stream. bmesh-lod correspond to lod_index in <xref target="ISO.IEC.23090-10"/>.</t>
        <t>bmesh-seq-set:</t>
        <t>bmesh-seq-set provides an identifier for the basemesh sequence parameter set for reference by other syntax elements defined in <xref target="ISO.IEC.23090-29"/>. It corresponds to bmsps_sequence_parameter_set_id defined in <xref target="ISO.IEC.23090-29"/>.</t>
        <t>bmesh-tier-flag:</t>
        <t>bmesh-tier-flag specifies the tier context for the interpretation of bmptl_level_idc. It corresponds to bmptl_tier_flag defined in <xref target="ISO.IEC.23090-29"/>.</t>
        <t>bmesh-toolset-idc:</t>
        <t>bmesh-toolset-idc indicates the toolset combination profile component to which the CVS conforms. It corresponds to bmptl_profile_toolset_idc defined in <xref target="ISO.IEC.23090-29"/>.</t>
        <t>sprop-bmesh-sei:</t>
        <t>sprop-bmesh-sei MAY be used to convey SEI NAL units of VDMC basemesh sub bitstreams for out-of-band transmission. The value is defined in Table H.1 of <xref target="ISO.IEC.23090-29"/>.</t>
        <t>sprop-bmesh-sm-id:</t>
        <t>sprop-bmesh-id indicates that the RTP stream contains only portion of the frame in the basemesh. sprop-bmesh-id is a comma-separated (',') list of integer values, which indicate the sprop-bmesh-ids that are present in the RTP stream.</t>
        <t>sprop-bmesh-sm-id-pres:</t>
        <t>sprop-bmesh-sm-id-pres indicates that the RTP packets contain bmesh-sm-id field.</t>
        <t><strong>optional parameters for AC-based displacement are defined in this memo</strong></t>
        <t>vdmcd-codec-idc:</t>
        <t>vdmcd-codec-idc indicates the codec group profile component to which the CDS conforms as specified in Annex J of <xref target="ISO.IEC.23090-29"/>. It corresponds to dptl_profile_codec_group_idc defined in <xref target="ISO.IEC.23090-29"/>.</t>
        <t>vdmcd-level-idc:</t>
        <t>vdmcd-level-idc indicates a level to which the CDS conforms as specified in Annex J of <xref target="ISO.IEC.23090-29"/>. The vdmcd-level-idc parameter corresponds to dptl_level_idc defined in <xref target="ISO.IEC.23090-29"/>.</t>
        <t>vdmcd-lod:</t>
        <t>vdmcd-lod specifies the support for signalling and adjusting the level of detail in the stream. vdmcd-lod correspond to lod_index in <xref target="ISO.IEC.23090-10"/>.</t>
        <t>vdmcd-seq-set:</t>
        <t>vdmcd-seq-set provides an identifier for the base mesh sequence parameter set for reference by other syntax elements defined in <xref target="ISO.IEC.23090-29"/>. It corresponds to dsps_sequence_parameter_set_id defined in <xref target="ISO.IEC.23090-29"/>.</t>
        <t>vdmcd-tier-flag:</t>
        <t>vdmcd-tier-flag specifies the tier context for the interpretation of dptl_level_idc as specified in Annex J of <xref target="ISO.IEC.23090-29"/>. It corresponds to dptl_tier_flag defined in <xref target="ISO.IEC.23090-29"/>.</t>
        <t>vdmcd-toolset-idc:</t>
        <t>vdmcd-toolset-idc indicates the toolset combination profile component to which the CDS conforms as specified in Annex J of <xref target="ISO.IEC.23090-29"/>. It corresponds to dptl_profile_toolset_idc defined in <xref target="ISO.IEC.23090-29"/>.</t>
        <t>sprop-vdmcd-sei:</t>
        <t>sprop-vdmcd-sei MAY be used to convey SEI NAL units of VDMC displacement sub bitstreams for out-of-band transmission. The value is defined in Table J.1 of <xref target="ISO.IEC.23090-29"/>.</t>
        <t>sprop-vdmcd-id:</t>
        <t>sprop-vdmcd-id indicates that the RTP stream contains only portion of the frame in the displacement. sprop-vdmcd-id is a comma-separated (',') list of integer values, which indicate the sprop-vdmcd-ids that are present in the RTP stream.</t>
        <t>sprop-vdmcd-id-pres:</t>
        <t>sprop-vdmcd-id-pres indicates that the RTP packets contain vdmcd-id field.</t>
      </section>
    </section>
    <section anchor="congestion-control-considerations">
      <name>Congestion control considerations</name>
      <t>In a case of congestion, adjusting the LoD level of each V-DMC stream can help partially mitigate the congestion issue. The substreams that make up V-DMC can independently adjust their LoD (Level of Detail) levels with high level parameters (e.g, bmesh-lod, vdmcd-lod). This parameter is linked to LoD-related parameters defined for each substream, allowing the overall LoD to be fine-tuned. During periods of congestion, a higher LoD level may overload transmitters and/or receivers, while also increasing network bandwidth consumption. To alleviate this, the LoD levels of individual substreams can be adjusted to reduce overall bandwidth usage and improve processing speed.</t>
    </section>
    <section anchor="session-descp">
      <name>Session description protocol</name>
      <t>This document complies with, and builds over, SDP mechanisms defined in <xref target="I-D.ietf-avtcore-rtp-v3c"/>, including the "v3cfmtp" attribute and the grouping framework "v3c" type.</t>
      <section anchor="v3c-format-parameters-v3cfmtp-attribute">
        <name>V3C format parameters "v3cfmtp" attribute</name>
        <t>The "v3cfmtp" SDP attribute is used to carry V3C specific media format parameters, which were defined in <xref target="ISO.IEC.23090-05"/>. This memo defines new values for one of these parameters, v3c-unit-type. New SDP parameters defined in this memo are carried with the "fmtp" attribute.</t>
      </section>
      <section anchor="mapping-of-payload-type-parameters-to-sdp">
        <name>Mapping of Payload Type Parameters to SDP</name>
        <section anchor="for-v-dmc-basemesh-components">
          <name>For V-DMC Basemesh Components</name>
          <t>The mapping of above defined payload format media type to the corresponding fields in the Session Description Protocol (SDP) is done according to <xref target="RFC8866"/>.</t>
          <ul spacing="normal">
            <li>
              <t>The media name in the "m=" line of SDP MUST be application.</t>
            </li>
            <li>
              <t>The encoding name in the "a=rtpmap" line of SDP MUST be bmesh</t>
            </li>
            <li>
              <t>The clock rate in the "a=rtpmap" line MUST be 90000.</t>
            </li>
            <li>
              <t>The OPTIONAL parameters , when present, MUST be included in the "a=fmtp" line of SDP.  This is expressed as a media type string, in the form of a semicolon-separated list of parameter=value pairs.</t>
            </li>
            <li>
              <t>The OPTIONAL parameters bmesh-codec-idc, bmesh-level-idc, bmesh-lod, bmesh-seq-set, bmesh-tier-flag, bmesh-toolset-idc, sprop-bmesh-sei, sprop-bmesh-sm-id, sprop-bmesh-sm-id-pres when present, MUST be included in the "a=fmtp" line of SDP. This parameter is expressed as a media type string, in the form of a semicolon-separated list of parameter=value pairs.</t>
            </li>
          </ul>
          <t>The OPTIONAL parameters, when present in the basemesh component media line format parameters attribute, specify values that are valid for the coded V3C sequence until a new value is received in-band. Some OPTIONAL parameters, like sprop-v3c-parameter-set or sprop-v3c-unit-header, can't be carried in-band in the basemesh stream and may thus be considered static for the session. The carriage of basemesh payload format parameters in "a=fmtp" and "a=v3cfmtp" attributes is separated by logical context, where "a=fmtp" consists of basemesh level media format parameters and "a=v3cfmtp" contains V3C level media format parameters.</t>
          <t>An example of media representation corresponding to the vdmc RTP payload in SDP is as follows:</t>
          <artwork><![CDATA[
   m=application 49170 RTP/AVP 98
   a=rtpmap:98 bmesh/90000
   a=fmtp:98 sprop-bmesh-sm-id=0,1
   a=v3cfmtp:sprop-v3c-unit-header=OAAAAA==;
]]></artwork>
        </section>
        <section anchor="for-v-dmc-displacement-components">
          <name>For V-DMC Displacement Components</name>
          <ul spacing="normal">
            <li>
              <t>The media name in the "m=" line of SDP MUST be application.</t>
            </li>
            <li>
              <t>The encoding name in the "a=rtpmap" line of SDP MUST be vmdcd</t>
            </li>
            <li>
              <t>The clock rate in the "a=rtpmap" line MUST be 90000.</t>
            </li>
            <li>
              <t>The OPTIONAL parameters, when present, MUST be included in the "a=fmtp" line of SDP.  This is expressed as a media type string, in the form of a semicolon-separated list of parameter=value pairs.</t>
            </li>
            <li>
              <t>The OPTIONAL parameters vdmcd-codec-idc, vdmcd-level-idc, vdmcd-lod, vdmcd-seq-set,vdmcd-tier-flag, vdmcd-toolset-idc, sprop-vdmcd-sei, sprop-vdmcd-id,sprop-vdmcd-id-pres when present, MUST be included in the "a=fmtp" line of SDP. This parameter is expressed as a media type string, in the form of a semicolon-separated list of parameter=value pairs.</t>
            </li>
          </ul>
          <t>The OPTIONAL parameters, when present in the displacement component media line format parameters attribute, specify values that are valid for the coded displacement sequence until a new value is received in-band. Some OPTIONAL parameters, like sprop-v3c-parameter-set or sprop-v3c-unit-header, can't be carried in-band in the displacement stream and may thus be considered static for the session. The carriage of V3C payload format parameters in "a=fmtp" and "a=v3cfmtp" attributes is separated by logical context, where "a=fmtp" consists of displacement level media format parameters and "a=v3cfmtp" contains V3C level media format parameters.</t>
          <t>An example of media representation corresponding to the vdmc RTP payload in SDP is as follows:</t>
          <artwork><![CDATA[
   m=application 49170 RTP/AVP 98
   a=rtpmap:98 vdmcd/90000
   a=fmtp:98 sprop-vdmcd-id=0,1
   a=v3cfmtp:sprop-v3c-unit-header=GAAAABB==;
   
]]></artwork>
        </section>
        <section anchor="for-other-v-dmc-components">
          <name>For Other V-DMC Components</name>
          <t>The mapping of payload type parameters to SDP is described in section 9.2.1. of <xref target="I-D.ietf-avtcore-rtp-v3c"/> for the V3C atlas components and in section 9.2.2. of <xref target="I-D.ietf-avtcore-rtp-v3c"/> for other video V-DMC components.</t>
        </section>
        <section anchor="grouping">
          <name>Grouping Framework</name>
          <t>The grouping framework described in section 9.3. of <xref target="I-D.ietf-avtcore-rtp-v3c"/> can be used for V-DMC. Group attribute with VDMC type is provided to allow application to identify "m" lines that belong to the same VDMC bitstream. Grouping type VDMC MUST be used with the group attribute. The tokens that follow are mapped to 'mid'-values of individual media lines in the SDP.</t>
          <artwork><![CDATA[
 a=group:VDMC <tokens>
]]></artwork>
          <t>The following example shows an SDP including four media lines, three describing VDMC components (PT:96=attribute, PT:97=displacement, PT:98=basemesh) and one VDMC atlas component (PT:100). All the media lines are grouped under one VDMC group. V3C parameter set is provided via session level VDMC media format parameter attribute.</t>
          <artwork><![CDATA[
  ...
a=group:VDMC 1 2 3 4 
m=video 40000 RTP/AVP 96
a=rtpmap:96 H264/90000 
a=fmtp:96 
  v3c-unit-header=EAAAAA==;
a=mid:1
m=application 40002 RTP/AVP 97
a=rtpmap:97 disp/90000 
a=fmtp:97 
  v3c-unit-header=GAAAABB==; 
a=mid:2
m=application 40004 RTP/AVP 98
a=rtpmap:98 bmesh/90000  
a=fmtp:98 
  v3c-unit-header=IAAAAA==;
a=mid:3
m=application 40008 RTP/AVP 100
a=rtpmap:100 v3c/90000  
a=fmtp:100
  v3c-unit-header=CAAAAA==; 


]]></artwork>
        </section>
      </section>
      <section anchor="offer-and-answer-considerations">
        <name>Offer and Answer Considerations</name>
        <t>An example offer, which allows bundling different V-DMC components (attribute, basemesh, AC-based displacement, atlas) into one stream, based on <xref target="RFC9143"/>.</t>
        <artwork><![CDATA[
  ...
  a=group:BUNDLE 1 2 3 4
  a=group:VDMC 1 2 3 4
  m=video 40000 RTP/AVP 96
  a=rtpmap:96 H264/90000
  a=v3cfmtp:sprop-v3c-unit-type=4;sprop-v3c-vps-id=0;
  sprop-v3c-atlas-id=0
  a=mid:1
  a=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid
  m=application 40002 RTP/AVP 97
  a=rtpmap:97 bmesh /90000
  a=v3cfmtp:sprop-v3c-unit-type=7;sprop-v3c-vps-id=0;
  sprop-v3c-atlas-id=0
  a=mid:2
  a=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid
  m=application 40004 RTP/AVP 98
  a=rtpmap:98 vdmcd /90000
  a=v3cfmtp:sprop-v3c-unit-type=8;sprop-v3c-vps-id=0;
  sprop-v3c-atlas-id=0
  a=mid:3
  a=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid
  m=application 40006 RTP/AVP 99
  a=rtpmap:99 v3c/90000
  a=v3cfmtp:sprop-v3c-unit-type=1;sprop-v3c-vps-id=0;
  sprop-v3c-atlas-id=0;
  sprop-v3c-parameter-set=AQD/AAAP/zwAAAAAADwIAQ5BwAAOADjgQAADkA==
  a=mid:4
  a=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid
  
]]></artwork>
        <t>An example answer, which accepts bundling of different V-DMC components.</t>
        <artwork><![CDATA[
  a=group:BUNDLE 1 2 3 4
  a=group:VDMC 1 2 3 4
  m=video 50000 RTP/AVP 96
  a=rtpmap:96 H264/90000
  a=mid:1
  a=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid
  m=application 0 RTP/AVP 97
  a=rtpmap:97 bmesh/90000
  a=bundle-only
  a=mid:2
  a=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid
  m=application 0 RTP/AVP 98
  a=rtpmap:98 vdmcd/90000
  a=bundle-only
  a=mid:3
  a=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid
  m=application 0 RTP/AVP 99
  a=rtpmap:99 v3c/90000
  a=bundle-only
  a=mid:4
  a=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid

]]></artwork>
      </section>
      <section anchor="declarative-sdp-considerations">
        <name>Declarative SDP Considerations</name>
        <t>When V-DMC content is offered over RTP in a declarative style, the considerations in section 9.5. of <xref target="I-D.ietf-avtcore-rtp-v3c"/> are applicable.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="vdmc-media-type-registration">
        <name>VDMC media type registration</name>
        <t>New media types will be registered with IANA; see <xref target="media-type-bm"/> and <xref target="media-type-displ"/>.</t>
      </section>
      <section anchor="vdmc-grouping-type-extension">
        <name>VDMC grouping type extension</name>
        <t>Grouping is extended to establish relationships between substreams of a VDMC representation.  A new group type (VDMC) for the group attribute will be registered as defined in <xref target="grouping"/>.  This document registers the semantics in <xref target="_table-group-id"/> with IANA in the "Semantics for the 'group' SDP Attribute" subregistry (under the "Session Description Protocol (SDP) Parameters" registry):</t>
        <figure anchor="_table-group-id">
          <name>Additional semantics for VDMC SDP group type</name>
          <sourcecode type="table"><![CDATA[
+==============+=======+==============+=============+
| Semantics    | Token | Mux Category | Reference   |
+==============+=======+==============+=============+
|VDMC grouping | VDMC  |   NORMAL     | "this memo" |
+--------------+-------+--------------+-------------+
]]></sourcecode>
        </figure>
        <t>NOTE: (informative) "this memo" to be replaced with the RFC number,
   once it becomes available.</t>
      </section>
    </section>
    <section anchor="security">
      <name>Security Considerations</name>
      <t>RTP packets using the payload format defined in this specification are subject to the security considerations discussed in the RTP specification <xref target="RFC3550"/>, and in any applicable RTP profile such as RTP/AVP <xref target="RFC3551"/>, RTP/AVPF <xref target="RFC4585"/>, RTP/SAVP <xref target="RFC3711"/>, or RTP/SAVPF <xref target="RFC5124"/>. However, as "Securing the RTP Protocol Framework: Why RTP Does Not Mandate a Single Media Security Solution" <xref target="RFC7202"/> 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 lays on anyone using RTP in an application. They can find guidance on available security mechanisms and important considerations in "Options for Securing RTP Sessions" <xref target="RFC7201"/>. Applications SHOULD use one or more appropriate strong security mechanisms. The rest of this Security Considerations section discusses the security impacting properties of the payload format itself.</t>
    </section>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Srinivas Gudumasu(InterDigital Canada) and Gurdeep Singh Bhullar and Olivier Mocquard(InterDigital Europe Ltd.) contributed to this draft as co-authors.</t>
      <t>Thanks to Danillo Bracco Graziosi for discussions and comments about this draft.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="ISO.IEC.23090-29" target="https://www.iso.org/standard/85254.html">
          <front>
            <title>Information technology - Coded representation of immersive media - Part 29: Video-based dynamic mesh coding (V-DMC)</title>
            <author>
              <organization>ISO/IEC</organization>
            </author>
            <date year="2024"/>
          </front>
          <seriesInfo name="ISO/IEC" value="23090-29"/>
        </reference>
        <reference anchor="ISO.IEC.23090-05" target="https://www.iso.org/standard/83535.html">
          <front>
            <title>Information technology - Coded representation of immersive media - Part 5: Visual volumetric video-based coding (V3C) and video-based point cloud compression (V-PCC)</title>
            <author>
              <organization>ISO/IEC</organization>
            </author>
            <date year="2023"/>
          </front>
          <seriesInfo name="ISO/IEC" value="23090-05"/>
        </reference>
        <reference anchor="ISO.IEC.23090-12" target="https://www.iso.org/standard/79113.html">
          <front>
            <title>Information technology - Coded representation of immersive media - Part 12: MPEG Immersive video (MIV)</title>
            <author>
              <organization>ISO/IEC</organization>
            </author>
            <date year="2023"/>
          </front>
          <seriesInfo name="ISO/IEC" value="23090-12"/>
        </reference>
        <reference anchor="ISO.IEC.23090-10" target="https://www.iso.org/standard/78991.html">
          <front>
            <title>Information technology - Coded representation of immersive media - Part 10: Carriage of visual volumetric video-based coding data</title>
            <author>
              <organization>ISO/IEC</organization>
            </author>
            <date year="2022"/>
          </front>
          <seriesInfo name="ISO/IEC" value="23090-10"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC2736">
          <front>
            <title>Guidelines for Writers of RTP Payload Format Specifications</title>
            <author fullname="M. Handley" initials="M." surname="Handley"/>
            <author fullname="C. Perkins" initials="C." surname="Perkins"/>
            <date month="December" year="1999"/>
            <abstract>
              <t>This document provides general guidelines aimed at assisting the authors of RTP Payload Format specifications in deciding on good formats. 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="36"/>
          <seriesInfo name="RFC" value="2736"/>
          <seriesInfo name="DOI" value="10.17487/RFC2736"/>
        </reference>
        <reference anchor="RFC8088">
          <front>
            <title>How to Write an RTP Payload Format</title>
            <author fullname="M. Westerlund" initials="M." surname="Westerlund"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>This document contains information on how best to write an RTP payload format specification. It provides reading tips, design practices, and practical tips on how to produce an RTP payload format specification quickly and with good results. A template is also included with instructions.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8088"/>
          <seriesInfo name="DOI" value="10.17487/RFC8088"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC3550">
          <front>
            <title>RTP: A Transport Protocol for Real-Time Applications</title>
            <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
            <author fullname="S. Casner" initials="S." surname="Casner"/>
            <author fullname="R. Frederick" initials="R." surname="Frederick"/>
            <author fullname="V. Jacobson" initials="V." surname="Jacobson"/>
            <date month="July" year="2003"/>
            <abstract>
              <t>This memorandum describes RTP, the real-time transport protocol. RTP provides end-to-end network transport functions suitable for applications transmitting real-time data, such as audio, video or simulation data, over multicast or unicast network services. RTP does not address resource reservation and does not guarantee quality-of- service for real-time services. The data transport is augmented by a control protocol (RTCP) to allow monitoring of the data delivery in a manner scalable to large multicast networks, and to provide minimal control and identification functionality. RTP and RTCP are designed to be independent of the underlying transport and network layers. The protocol supports the use of RTP-level translators and mixers. Most of the text in this memorandum is identical to RFC 1889 which it obsoletes. There are no changes in the packet formats on the wire, only changes to the rules and algorithms governing how the protocol is used. The biggest change is an enhancement to the scalable timer algorithm for calculating when to send RTCP packets in order to minimize transmission in excess of the intended rate when many participants join a session simultaneously. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="64"/>
          <seriesInfo name="RFC" value="3550"/>
          <seriesInfo name="DOI" value="10.17487/RFC3550"/>
        </reference>
        <reference anchor="RFC7798">
          <front>
            <title>RTP Payload Format for High Efficiency Video Coding (HEVC)</title>
            <author fullname="Y.-K. Wang" initials="Y.-K." surname="Wang"/>
            <author fullname="Y. Sanchez" initials="Y." surname="Sanchez"/>
            <author fullname="T. Schierl" initials="T." surname="Schierl"/>
            <author fullname="S. Wenger" initials="S." surname="Wenger"/>
            <author fullname="M. M. Hannuksela" initials="M. M." surname="Hannuksela"/>
            <date month="March" year="2016"/>
            <abstract>
              <t>This memo describes an RTP payload format for the video coding standard ITU-T Recommendation H.265 and ISO/IEC International Standard 23008-2, both also known as High Efficiency Video Coding (HEVC) and developed by the Joint Collaborative Team on Video Coding (JCT-VC). The RTP payload format allows for packetization of one or more Network Abstraction Layer (NAL) units in each RTP packet payload as well as fragmentation of a NAL unit into multiple RTP packets. Furthermore, it supports transmission of an HEVC bitstream over a single stream as well as multiple RTP streams. When multiple RTP streams are used, a single transport or multiple transports may be utilized. The payload format has wide applicability in videoconferencing, Internet video streaming, and high-bitrate entertainment-quality video, among others.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7798"/>
          <seriesInfo name="DOI" value="10.17487/RFC7798"/>
        </reference>
        <reference anchor="RFC8866">
          <front>
            <title>SDP: Session Description Protocol</title>
            <author fullname="A. Begen" initials="A." surname="Begen"/>
            <author fullname="P. Kyzivat" initials="P." surname="Kyzivat"/>
            <author fullname="C. Perkins" initials="C." surname="Perkins"/>
            <author fullname="M. Handley" initials="M." surname="Handley"/>
            <date month="January" year="2021"/>
            <abstract>
              <t>This memo defines the Session Description Protocol (SDP). SDP is intended for describing multimedia sessions for the purposes of session announcement, session invitation, and other forms of multimedia session initiation. This document obsoletes RFC 4566.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8866"/>
          <seriesInfo name="DOI" value="10.17487/RFC8866"/>
        </reference>
        <reference anchor="RFC9143">
          <front>
            <title>Negotiating Media Multiplexing Using the Session Description Protocol (SDP)</title>
            <author fullname="C. Holmberg" initials="C." surname="Holmberg"/>
            <author fullname="H. Alvestrand" initials="H." surname="Alvestrand"/>
            <author fullname="C. Jennings" initials="C." surname="Jennings"/>
            <date month="February" year="2022"/>
            <abstract>
              <t>This specification defines a new Session Description Protocol (SDP) Grouping Framework extension called 'BUNDLE'. The extension can be used with the SDP offer/answer mechanism to negotiate the usage of a single transport (5-tuple) for sending and receiving media described by multiple SDP media descriptions ("m=" sections). Such transport is referred to as a "BUNDLE transport", and the media is referred to as "bundled media". The "m=" sections that use the BUNDLE transport form a BUNDLE group.</t>
              <t>This specification defines a new RTP Control Protocol (RTCP) Source Description (SDES) item and a new RTP header extension.</t>
              <t>This specification updates RFCs 3264, 5888, and 7941.</t>
              <t>This specification obsoletes RFC 8843.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9143"/>
          <seriesInfo name="DOI" value="10.17487/RFC9143"/>
        </reference>
        <reference anchor="RFC3551">
          <front>
            <title>RTP Profile for Audio and Video Conferences with Minimal Control</title>
            <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
            <author fullname="S. Casner" initials="S." surname="Casner"/>
            <date month="July" year="2003"/>
            <abstract>
              <t>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="RFC4585">
          <front>
            <title>Extended RTP Profile for Real-time Transport Control Protocol (RTCP)-Based Feedback (RTP/AVPF)</title>
            <author fullname="J. Ott" initials="J." surname="Ott"/>
            <author fullname="S. Wenger" initials="S." surname="Wenger"/>
            <author fullname="N. Sato" initials="N." surname="Sato"/>
            <author fullname="C. Burmeister" initials="C." surname="Burmeister"/>
            <author fullname="J. Rey" initials="J." surname="Rey"/>
            <date month="July" year="2006"/>
            <abstract>
              <t>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="RFC3711">
          <front>
            <title>The Secure Real-time Transport Protocol (SRTP)</title>
            <author fullname="M. Baugher" initials="M." surname="Baugher"/>
            <author fullname="D. McGrew" initials="D." surname="McGrew"/>
            <author fullname="M. Naslund" initials="M." surname="Naslund"/>
            <author fullname="E. Carrara" initials="E." surname="Carrara"/>
            <author fullname="K. Norrman" initials="K." surname="Norrman"/>
            <date month="March" year="2004"/>
            <abstract>
              <t>This document describes the Secure Real-time Transport Protocol (SRTP), a profile of the Real-time Transport Protocol (RTP), which can provide confidentiality, message authentication, and replay protection to the RTP traffic and to the control traffic for RTP, the Real-time Transport Control Protocol (RTCP). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3711"/>
          <seriesInfo name="DOI" value="10.17487/RFC3711"/>
        </reference>
        <reference anchor="RFC5124">
          <front>
            <title>Extended Secure RTP Profile for Real-time Transport Control Protocol (RTCP)-Based Feedback (RTP/SAVPF)</title>
            <author fullname="J. Ott" initials="J." surname="Ott"/>
            <author fullname="E. Carrara" initials="E." surname="Carrara"/>
            <date month="February" year="2008"/>
            <abstract>
              <t>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">
          <front>
            <title>Options for Securing RTP Sessions</title>
            <author fullname="M. Westerlund" initials="M." surname="Westerlund"/>
            <author fullname="C. Perkins" initials="C." surname="Perkins"/>
            <date month="April" year="2014"/>
            <abstract>
              <t>The Real-time Transport Protocol (RTP) is used in a large number of different application domains and environments. This heterogeneity implies that different security mechanisms are needed to provide services such as confidentiality, integrity, and source authentication of RTP and RTP Control Protocol (RTCP) packets suitable for the various environments. The range of solutions makes it difficult for RTP-based application developers to pick the most suitable mechanism. This document provides an overview of a number of security solutions for RTP and gives guidance for developers on how to choose the appropriate security mechanism.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7201"/>
          <seriesInfo name="DOI" value="10.17487/RFC7201"/>
        </reference>
        <reference anchor="RFC7202">
          <front>
            <title>Securing the RTP Framework: Why RTP Does Not Mandate a Single Media Security Solution</title>
            <author fullname="C. Perkins" initials="C." surname="Perkins"/>
            <author fullname="M. Westerlund" initials="M." surname="Westerlund"/>
            <date month="April" year="2014"/>
            <abstract>
              <t>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="RFC9328">
          <front>
            <title>RTP Payload Format for Versatile Video Coding (VVC)</title>
            <author fullname="S. Zhao" initials="S." surname="Zhao"/>
            <author fullname="S. Wenger" initials="S." surname="Wenger"/>
            <author fullname="Y. Sanchez" initials="Y." surname="Sanchez"/>
            <author fullname="Y.-K. Wang" initials="Y.-K." surname="Wang"/>
            <author fullname="M. M Hannuksela" initials="M. M" surname="Hannuksela"/>
            <date month="December" year="2022"/>
            <abstract>
              <t>This memo describes an RTP payload format for the Versatile Video Coding (VVC) specification, which was published as both ITU-T Recommendation H.266 and ISO/IEC International Standard 23090-3. VVC was developed by the Joint Video Experts Team (JVET). The RTP payload format allows for packetization of one or more Network Abstraction Layer (NAL) units in each RTP packet payload, as well as fragmentation of a NAL unit into multiple RTP packets. The payload format has wide applicability in videoconferencing, Internet video streaming, and high-bitrate entertainment-quality video, among other applications.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9328"/>
          <seriesInfo name="DOI" value="10.17487/RFC9328"/>
        </reference>
        <reference anchor="I-D.ietf-avtcore-rtp-v3c">
          <front>
            <title>RTP Payload Format for Visual Volumetric Video-based Coding (V3C)</title>
            <author fullname="Lauri Ilola" initials="L." surname="Ilola">
              <organization>Nokia Technologies</organization>
            </author>
            <author fullname="Lukasz Kondrad" initials="L." surname="Kondrad">
              <organization>Nokia Technologies</organization>
            </author>
            <date day="19" month="September" year="2024"/>
            <abstract>
              <t>   A visual volumetric video-based coding (V3C) [ISO.IEC.23090-5]
   bitstream is composed of V3C units that contain V3C atlas sub-
   bitstreams, V3C video sub-bitstreams, and a V3C parameter set.  This
   memo describes an RTP payload format for V3C atlas sub-bitstreams.
   The RTP payload format for V3C video sub-bitstreams is defined by
   relevant Internet Standards for the applicable video codec.  The V3C
   RTP payload format allows for packetization of one or more V3C atlas
   Network Abstraction Layer (NAL) units in an RTP packet payload as
   well as fragmentation of a V3C atlas NAL unit into multiple RTP
   packets.  The memo also describes the mechanisms for grouping RTP
   streams of V3C component sub-bitstreams, providing a complete
   solution for streaming V3C encoded content.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-avtcore-rtp-v3c-07"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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
UgCjfJyNKMhXmrW0urlFk3YeqYZCqlRhcVgbXRsiuHpzP5VSqKcDbnFUbqvv
cYykhu6d6ZXStePkTAJOkLUmhX8vhFe6aHJon6LvPt462MR+HvbenYrHj6iJ
Yrjdx4+YSTwkXivf4UTxTY0PHG62tmQbiY9ukKoOX/Xw5/DwJxc4mRQfvNzO
k66/Adl1NRlyPNHXya4FHP+PJLx+e2FUv0ehdRuJ5d1j+y2llutC+q2LLxfa
lYkwjkn4FaWXW876zy3BaMfPkWCKIywtvp6j9HryhOQX7cWwEKO8ZCnK5tqG
zm2kU9/qZIeqdam0ipt63NnubC2OnNLXeMNy8o0vmgHw4ntdLhGMRZY7zY7T
c6RTTndrlbh5rrwaz7RX49MD5erQQcAB30fDlHcWQyc9TPo6SYKuw5BY7g9y
D5DXWwVW6nwacxWtHW9oXXa5NmFZIHlhoMjrOyfSqGPwQIPRWzsH1jgrRi6Y
zFvK7EOsgiN5YxD/RRpicH+YJMMf2ibQzPK9GSZvPAgovmobKzqksbsE3H/x
kP/tE/cbJwFV7XssoUlnZ0Sv2uV1kVW5PT56CelmM15bit5yKQfv8O0+3j+0
hA8+ODi0GRo/e3SoVHQuu4r+DurNI3Lqcmtzc4NL2ZVaZ2SUIB5p3hi1yaWg
VEf0uOMGmNFpn00rVxRpyh4Z5pb0bZhlej4ol691OvDQWQRVceX+vckh77Rd
5GKG2e3jB4rT7Yuft/d3mdEJfMFsbp9sXJ+HPTUqeHQIxNPdwkEcvgrdbJuh
DuyhDkjA1IY6CA5l2KVQg22HBtt1mHiDDSKs4R4Fhzv2Z7YTGuyRHmwLxYIe
Df7CHmuDbbHw8Ac7UoNJP7S7WTh4lrKnkUJ7aXENvx55By2O/LwweakR3yB7
XvGV11bFDJ/finVrv6hd0QqHabR4f2xw9iHSujqR4LaZvCD38dbujjqdC9Cp
0OziyduX/RdPFa3ab2waxufNRGwLbJuM+U2DNEZOerj7k5+ycLhJYrmet3Ao
u5PUjr+CGkWLLqo87aI46dJWLbooTS6HObzvFsCtuvANz2D+DrHnccBkK5ad
ycHtZrK9qpnsejpUTYVaeiaPbjeTnVXNZN/M5LE7k8dmby+extZNpuG9cOyT
w97f+g+BTZw+/OWa+EWvf33c+9veE/jrVa//79Hf4MkH4CIGF7u3w4XPgCzW
EhHz0bxlgCU2LOZCNkMTfwne/HH7/b93w/2/sg27uWiz2qMSauI2BhSseLf5
1socY6UBjJVslc3lt0kQiFvRaF1EkpDsx4MxWrqY9o86pC8jZclERZhUtINy
oYhkhzrFh6q9YMkD3VtRzsaycIob4eDaFXs3TUHhE1lx3HvZC0ALU7LUQNL5
7Zyb+/fwQNO8xGNnvm+aW9GcyCTA/n+SCVpuzvwX0imcp5xZqW+1N0qsNjxg
MUCrl/mR2iYh15XMXMIqokUZUU4XV4HBOV0m00JXt7RO88mHReO4Fj9VPkBn
D5szfA8TtjMXMY1q9lgNA5F30K7txi/KtanP79VXMuownkRY0KPg73A6cZu+
BmYNmNOo1R6+M/2Fgu8Hav8DkWNPQbmGk5crORPrbDDIDhaeypoD5TVFDbMN
z8EhCNb79348dH5+9P4N/vnj/XufhZkIlr0Tb9CMg39Pqo/iKCrjUQZwfxav
dawi1ca77WguhX1mSqBifS9fvT7pveDae2JNH9Cv0Wht5+dH79/gn07leMGl
99xl1VXjTYJf4SwqAYeraWiSa/ARuPW75myoOSgHaBzVaMtaB0VZXVZB/WDp
KkFltEB6onVpFdJScSoyF9NlGhSiIvMvKV/QiuaqClNLxfEp+iEQTgIm3xRU
nf87HuiiqkU4ERQNhEFFjms7NM3pzcopbSm3UWRSMs9VKWEZPalKLSkRoz7f
ws/lw2f8dHfv0Z56embaHmxR2yzXL56J/4UXe1vbu/+y7kyBQdYYqRJJCIbe
edrt1BV/v5zRuz5mob3MSnGCWY8YgaOuTOZ8dr1CZ9m4wrmv0bgH25vb/9KY
0tV4MZ3NqznLq/NDIdjnWVjXYMvPqTCfHP0anTqFHIr9ESosZxLLImdgmiUD
s3qjLBoX7BLHUFR2S0U4RovjE3P6lRKNsyoHkowq6Aa3An5+kWlZKWuuycMM
D95xNKNcVVhmtBOZDJWQTZ3jNPRSzcjzdoE120ZVMozoIpbUbAEDvxVIJYO7
sryM0jIgodc4j5R3sF5mBEIy3EKvzhZQhZNLLMv9YDaxXQwR4AY1PafYNWDB
GRVvrkHm39MN6Gnauro0kKINd6/B9KIBRUtyNbEyMZcZeBs6KYt4fCFVi95A
VdueKMfxGcw+uQKKf14Nq0lUVOuUpd1PRgleGnQUpdEwYnfY8yofxvGUSPtS
PLmsxqAS0ZtX4+QKg7tPssF/qigfun08rRBI8aIcdjY4NpQEnyyshSI3jy7o
+rFB1o44V1nWt4vSD+S07gMGx+NMPMkx/kg8z6NfkqxIuCgb44hJnepcTzg0
Pjrn0oRqBOjz/wNVr8CqATgBAA==

-->

</rfc>
