<?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.43 (Ruby 3.2.3) -->
<?rfc docmapping="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-avtcore-rtp-avatar-03" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.35.0 -->
  <front>
    <title abbrev="RTP-Payload-avatar">RTP Payload Format for Avatar Representation Format (ARF) Animation Stream</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-avtcore-rtp-avatar-03"/>
    <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>
    <author initials="A." surname="Hamza" fullname="Ahmed Hamza">
      <organization>InterDigital</organization>
      <address>
        <postal>
          <country>Canada</country>
        </postal>
        <email>ahmed.hamza@interdigital.com</email>
      </address>
    </author>
    <author initials="I." surname="Bouazizi" fullname="Imed Bouazizi">
      <organization>Qualcomm</organization>
      <address>
        <postal>
          <country>Canada</country>
        </postal>
        <email>BOUAZIZI@qti.qualcomm.com</email>
      </address>
    </author>
    <date/>
    <area>Transport</area>
    <workgroup>avtcore</workgroup>
    <abstract>
      <?line 70?>

<t>This memo outlines RTP payload formats for the animation stream format as defined in the ISO/IEC 23090-39 standard (MPEG-I Avatar Representation Format), in the following referred to as ARF. ARF is composed of Avatar Animation Units (AAU) including an AAU header and zero or more AAU packets. The RTP payload header format allows for packetization of an AAU unit in an RTP packet payload as well as fragmentation of an AAU into multiple RTP packets.</t>
    </abstract>
  </front>
  <middle>
    <?line 74?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Avatars are digital representations of users in the metaverse, a set of virtual worlds where people can interact with each other in real-time. Users can customize different aspects of their avatars, such as clothing, accessories, and even physical attributes. Avatars allow users to express themselves and create a unique digital identity within the metaverse. The integration, animation, and representation of avatars in real-time communication services is essential to enable immersive experiences.</t>
      <t><xref target="ISO.IEC.23090-39"/> specifies the Avatar Representation Format (ARF) to offer an interoperable exchange format for the storage, carriage and animation of avatars. It defines the "Avatar Animation Unit"(AAU) as a unit of packetization suitable for Avatar animation streams, and similar in essence to the NAL unit defined in some video specifications. This document describes how AAUs can be transmitted using the RTP protocol. This document follows 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="definitions-and-abbreviations">
      <name>Definitions and Abbreviations</name>
      <section anchor="general">
        <name>General</name>
        <t>This document uses the definitions of the Avatar Representation Format <xref target="ISO.IEC.23090-39"/>. Some of these terms are provided here for convenience.</t>
      </section>
      <section anchor="definitions">
        <name>Definitions</name>
        <t>Animation Streams: timed data used to animate the base avatar.</t>
      </section>
      <section anchor="abbreviation">
        <name>Abbreviation</name>
        <t>ARF Avatar Representation Format</t>
        <t>AAU Avatar Animation Unit</t>
        <t>LoD Level of Detail</t>
      </section>
    </section>
    <section anchor="avatar-format">
      <name>Avatar Representation Format (informative)</name>
      <section anchor="overview-of-avatar-representation-format">
        <name>Overview of Avatar Representation Format</name>
        <t>The Avatar Representation Format (ARF) defines two key components of an avatar animation system: the Base Avatar Format, which describes static assets, and the Animation Stream Format, which describes the dynamic part of the avatar animation, and is the core subject of this document.</t>
        <t>The Base Avatar Format defines a structure for avatar models, among other things allowing them to be stored in digital asset repositories. This ensures that core avatar assets can be accessed and animated by receiving systems. On the other hand, the Animation Stream Format specifies how animation data is organized and transmitted between sender and receiver. It defines the encoding of facial and body animation, enabling data captured from input devices such as head-mounted displays (HMDs) and sensors to be consistently interpreted across different systems for animating associated avatars. <xref target="_figure-avatar-architecture"/> describes an Avatar reference architecture.</t>
        <figure anchor="_figure-avatar-architecture">
          <name>Avatar reference architecture</name>
          <artwork><![CDATA[
+---------+
|Reference|
|  Model  |
+----+----+
     |                +-------------+                       
     +--------------->|Digital Asset|Base Avatar Format(BAF)
     |                |    Repo     +--------------------+
     |                +-------------+                    |
     |                                                   |
+----+---+                                               |     
|Tracking|    +------+   Animation Stream Format    +----v---+
| System |--->|Sender|----------------------------->|receiver|
+--------+    +------+                              +--------+  
]]></artwork>
        </figure>
      </section>
      <section anchor="avatar-stream">
        <name>Avatar Animation Streams</name>
        <t>Animation streams are timed data used to animate an avatar. In <xref target="ISO.IEC.23090-39"/>, this data includes skeletal, blend shape set, and other animation-related information. Animation stream format defines how animation data is structured and carried between senders and receivers. This format defines how facial and body animation information is encoded, allowing data captured from input devices like Head-Mounted Displays (HMDs) and sensors to be consistently interpreted across different systems for the animation of associated avatars.</t>
        <t>The animation streams may be read from a file, or generated on-the-fly as cameras and/or sensors capture a person's motion and generate corresponding commands to mimic this movement for an avatar that represents the user. Avatar animation samples are structured into a bitstream comprising a sequence of Avatar Animation Units (AAUs), defined in <xref target="ISO.IEC.23090-39"/>, and whose general structure is provided in <xref target="figure1"/>.</t>
        <t>An avatar animation is associated with a Base Avatar, using an avatar ID. Each AAU is associated with an Avatar ID that indicates the target avatar to which the animation data applies. In addition, it is also associated with a Level of Detail (LoD), which indicates the level of detail of the asset to which the animation data is associated. The animation data within an AAU can for example be generated by a tracking and animation framework (e.g., OpenXR or ARKit). <xref target="ISO.IEC.23090-39"/> defines this identified using a URN.</t>
        <t>The receiver is aware of the avatar IDs and/or levels of detail that are transmitted in a stream, and needs the appropriate assets to render the avatar animation. The method for accessing the assets is not described in this document. The receiver can for example use the avatar ID and level of detail associated with an AAU to transmit the AAU to an animation player instance that has the proper assets.</t>
        <figure anchor="figure1">
          <name>The structure of AAU Header(a) and Payload(b)</name>
          <artwork><![CDATA[
   +---------+-----------+  +----------+-----------------+
   |unit_type|unit_length|  |timestamp |data of unit_type|
   +---------+-----------+  +----------+-----------------+
   (a) AAU Header           (b) AAU Payload
]]></artwork>
        </figure>
      </section>
    </section>
    <section anchor="section5">
      <name>Payload format for ARF Animation Streams</name>
      <section anchor="general-1">
        <name>General</name>
        <t>This section specifies details related to the RTP payload format definitions for the ARF Animation Streams defined in <xref target="ISO.IEC.23090-39"/>. Aspects related to RTP header, RTP payload header and general payload structure are defined.</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 Avatar Animation Unit</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>The marker bit SHOULD be set to one in the first RTP packet after an idle period. This is aligned with the use of the marker bit in audio codecs. This can for example be used for jitter buffer adaptation. The marker bit in all other packets MUST be set to zero.</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>A timestamp representing the sampling time of the earliest AAU (Avatar Animation Unit) in the payload. The AAU defines aau_timestamp in its payload <xref target="ISO.IEC.23090-39"/>. The timestamp in seconds can be calculated as: timestamp / timescale.</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="payload-header">
        <name>RTP Payload Header for Avatar Animation Unit</name>
        <t>The RTP Payload Header follows the RTP header. <xref target="_figure-rtpheader-aau"/> describes RTP Payload Header.</t>
        <figure anchor="_figure-rtpheader-aau">
          <name>RTP Payload header for Avatar Animation</name>
          <artwork><![CDATA[
 0 1 2 3 4 5 6 7      0 1 2 3 4 5 6 7 
+-+-+------------+   +-+-+------------+
|A|R|     UT     |   |A|R|     UT     |
+-+-+------------+   +----------------+
                     |    Avatar ID   |
                     +----------------+
   
 (a) A = 0            (b) A = 1  
]]></artwork>
        </figure>
        <t>A (Avatar bit, 1 bit): This field indicates the presence of the Avatar ID field in the RTP payload header. A value of 1 indicates that an 8-bit Avatar ID field is present immediately following the first octet of the RTP payload header, while a value of 0 indicates that the Avatar ID field is not present.</t>
        <t>R (Reserved, 1 bit): This bit is reserved for future use. It MUST be set to 0 by the sender and MUST be ignored by the receiver.</t>
        <t>UT (Unit Type, 6 bits): this field indicates the type of the payload, which can be the type of the AAU <xref target="ISO.IEC.23090-39"/> for single unit payload, or the type of the payload otherwise, as shown in <xref target="_figure-transmission-type"/>.</t>
        <t>Avatar ID (8 bits): This field identifies the avatar to which the animation data carried in the RTP packet belongs. The field is present only when the Avatar bit (A) is set to 1. When SDP is used, the value of this field SHOULD match an avatar ID key signaled in the avatar-ids SDP parameter. When the Avatar bit (A) is set to 0, the RTP stream SHOULD be associated with a single avatar, whose identity is determined through session signaling, such as the avatar-ids SDP parameter. When SDP is used, the value of this field SHOULD match an avatar ID key signaled in the avatar-ids SDP parameter. The receiver MAY ignore the RTP payload otherwise.</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 single unit packet contains a single AAU in the payload. A fragmentation unit contains a subset of an AAU. An aggregation packet contains multiple Avatar Animation Units in the payload. The unit type (UT) field of the RTP payload header, as shown in <xref target="_figure-transmission-type"/>, identifies both the payload structure and, in the case of a single-unit structure, also identifies the type of AAU present in the payload. The Unit Types 1 through 5 in <xref target="_figure-transmission-type"/> are defined in <xref target="ISO.IEC.23090-39"/>.</t>
          <t>The RTP payload header described in Figures 7, 8, 10, and 11 illustrate the case where the Avatar bit (A) is set to 1.  When A is set to 0, the Avatar ID field is omitted, and the RTP payload header consists of a single octet.</t>
          <figure anchor="_figure-transmission-type">
            <name>Payload structure type for Avatar</name>
            <artwork><![CDATA[
Unit     Payload   Name
Type     Structure
----------------------------------------
0        N/A       Reserved
1        Single    Configuration AAU
2        Single    Blendshape AAU
3        Single    Joint AAU
4        Single    Landmark AAU
5        Single    Texture AAU   
13       Aggr      Aggregation Packet (STAP)
14       Aggr      Aggregation Packet (MTAP)
15       Frag      Fragmentation Unit
]]></artwork>
          </figure>
          <t>The payload structures are represented in <xref target="_figure-transmission-style"/>. The single unit payload structure is specified in <xref target="single"/>. The fragmented unit payload structure is specified in <xref target="fragmented"/>. The aggregation unit payload structure is specified in <xref target="aggregated"/>.</t>
          <figure anchor="_figure-transmission-style">
            <name>RTP Transmission mode</name>
            <artwork><![CDATA[
                                            +-------------------+
                                            |     RTP Header    |
                                            +-------------------+
                                            | RTP Payload Header|
                      +-------------------+ |   (Aggregation)   |
                      |    RTP Header     | +-------------------+
+-------------------+ +-------------------+ |     AAU 1 Size    |
|     RTP Header    | | RTP Payload Header| +-------------------+
+-------------------+ |  (Fragmentation)  | |       AAU 1       |
| RTP Payload Header| +-------------------+ +-------------------+
+-------------------+ |     FU Header     | |     AAU 2 Size    |
|    RTP Payload    | +-------------------+ +-------------------+
|   (Single AAU)|   | |   RTP Payload     | |      ...          |
+-------------------+ +-------------------+ +-------------------+
(a) single unit      (b)fragmentation unit (c) aggregation packet

]]></artwork>
          </figure>
        </section>
        <section anchor="single">
          <name>Single Unit Payload Structure</name>
          <t>In a single unit payload structure, as described in <xref target="_figure-transmission-single"/>, the RTP packet contains the RTP header, followed by the Payload Header and one single AAU. The Payload Header follows the structure described in <xref target="payload-header"/>. The  payload contains an AAU as defined in <xref target="ISO.IEC.23090-39"/>.</t>
          <figure anchor="_figure-transmission-single">
            <name>Single AAU payload structure</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 Header                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Payload Header |   (Avatar ID) |                               |
+---------------+---------------+                               |
|                           AAU  Data                           |
|                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               :...OPTIONAL RTP padding        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
        </section>
        <section anchor="fragmented">
          <name>Fragmented Unit Payload Structure</name>
          <t>In a fragmented unit payload structure, as described in <xref target="_figure-fragment-structure"/>, the RTP packet contains the RTP header, followed by the Payload Header, a Fragmented Unit (FU) header, and an AAU fragment. The Payload Header follows the structure described in <xref target="payload-header"/>. The value of the UT field of the Payload Header is 15. The FU header follows the structure described in <xref target="_figure-fragment-header"/>.</t>
          <figure anchor="_figure-fragment-structure">
            <name>Fragmentation unit header</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 Header                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Payload Header |   (Avatar ID) | FU Header     |               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+               |
|                          AAU Fragment                         |
|                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               :...OPTIONAL RTP padding        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
          <t>FU headers are used to enable fragmenting a single AAU into multiple RTP packets. Fragments of the same AAU 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). FUs MUST NOT be nested, i.e., an FU MUST NOT contain a subset of another FU.</t>
          <t><xref target="_figure-fragment-header"/> describes a FU header, including the following fields:</t>
          <figure anchor="_figure-fragment-header">
            <name>Fragmentation unit header</name>
            <artwork><![CDATA[
+-------------------------------+
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
+---+---+---+---+---+---+---+---+
|FUS|FUE|          UT           |
+---+---+-----------------------+
]]></artwork>
          </figure>
          <t>FUS (Fragmented Unit Start, 1 bit): this field MUST be set to 1 for the first fragment, and 0 for the other fragments.</t>
          <t>FUE (Fragmented Unit End, 1 bit): this field MUST be set to 1 for the last fragment, and 0 for the other fragments.</t>
          <t>UT (Unit Type, 6 bits): this field indicates the type of the AAU this fragment belongs to, using values defined in <xref target="_figure-transmission-type"/>.</t>
        </section>
        <section anchor="aggregated">
          <name>Aggregation Packet Payload Structure</name>
          <t>In an aggregation packet, as described in <xref target="_figure-aggre-structure"/>, the RTP packet contains an RTP header, followed by a Payload Header, and, for each aggregated AAU, an AAU size followed by the AAU. The Payload Header follows the structure described in <xref target="payload-header"/>.</t>
          <figure anchor="_figure-aggre-structure">
            <name>Single-Time Aggregation Packet</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 Header                           |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |Payload Header |  (Avatar ID)  |           AAU 1 Size          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                              AAU 1                            |
    |                                                               |
    :                                                               :
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |            AAU 2 Size       |                                 |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                                 |
    |                              AAU 2                            |
    |                                                               |
    |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                               :...OPTIONAL RTP padding        |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
          <t><xref target="_figure-aggre-structure"/> shows a Single-Time Aggregation Packet (STAP), which can be used to transmit multiple Avatar Animation Units that correspond to the same timestamp. For example, if two different AAUs are used for different animations for different parts of the avatar, they can be transmitted together in a single STAP. The default size of the avatar animation unit length field is 16 bits. The value of the UT field of the Payload Header is 13.</t>
          <t>All AAUs contained in an aggregation packet MUST belong to the same avatar. When the Avatar bit (A) is set to 1, the Avatar ID field identifies the avatar to which all AAUs in the aggregation packet belong.</t>
          <figure anchor="_figure-aggremtap-structure">
            <name>Multiple-time aggregation packet</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 Header                           |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |Payload Header |  (Avatar ID)  |          AAU 1 Size           |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                           TS offset           |               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+               |
    |                               AAU 1                           |
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |             AAU 2 Size        |            TS offset          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |   TS offset   |                                               |
    |-+-+-+-+-+-+-+-+                                               |
    |                              AAU 2                            |
    |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                               :...OPTIONAL RTP padding        |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   
]]></artwork>
          </figure>
          <t><xref target="_figure-aggremtap-structure"/> shows a multi-time aggregation packet. It is used to transmit multiple Avatar Animation Units with different timestamps, in one RTP packet. Multi-time aggregation can help reduce the number of packets, in environments where some delay is acceptable. The default size of both the TS offset field and the AAU length field is 16 bits. The value of the UT field of the Payload Header is 14. In case of MTAP, the timestamp offset field MUST be set to the value of (AAU-time of the animation unit - RTP timestamp of the packet). The timestamp offset of the earliest aggregation unit MUST always be zero. Therefore, the RTP timestamp of the MTAP is identical to the earliest AAU-time.</t>
        </section>
      </section>
    </section>
    <section anchor="transmission-consdier">
      <name>AAU Transmission Considerations</name>
      <t>The following considerations apply for the streaming of Avatar Animation Units over RTP:</t>
      <t>In some multimedia conference scenarios using an RTP video mixer (e.g., when adding or selecting a new source), it is recommended to use Full Intra Request (FIR) feedback <xref target="RFC5104"/> messages with avatar animation. The purpose of the FIR message is to cause an encoder to send a decoder refresh point at the earliest opportunity. In the context of avatar animation, an appropriate decoder refresh point is a configuration AAU. The configuration AAU point enables a decoder to be reset to a known state and be able to decode all AAUs following it.</t>
    </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="format-param">
        <name>Media Type Registration Update</name>
        <t>The receiver MUST ignore any parameter unspecified in this memo.</t>
        <t>Type name: application</t>
        <t>Subtype name: ampg</t>
        <t>Required parameters: N/A</t>
        <t>Optional parameters: Optional parameters are defined in the following section.</t>
        <t>Encoding considerations: This type is only defined for transfer via RTP <xref target="RFC3550"/>.</t>
        <t>Security considerations: Please see section 11.</t>
        <t>Interoperability considerations: N/A</t>
        <t>Published specification: Please refer to <xref target="ISO.IEC.23090-39"/></t>
        <t>Applications that use this media type: Any application that relies on Avatar media services over RTP</t>
        <t>Fragment identifier considerations: N/A</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' Address section of this memo.</t>
        <t>Change controller: IETF avtcore@ietf.org (mailto:avtcore@ietf.org)</t>
        <t>Provisional registration? (standards tree only): No</t>
      </section>
      <section anchor="optional-param">
        <name>Optional Parameters Definition</name>
        <t>version:
It provides the year of the edition and amendment of the specifications followed by this RTP payload type. This parameter is defined in Table 3 of <xref target="ISO.IEC.23090-39"/>.</t>
        <t>frameworks:
It provides a comma-separated list of the tracking framework names (URNs) used to generate the encoded stream. The URNs in this parameter correspond to the URNs in Table 5, 6 of <xref target="ISO.IEC.23090-39"/>.</t>
        <t>avatar-ids: 
It provides an association between avatar IDs for which animation data is carried in the animation stream, and their corresponding ARF containers. This parameter is provided as a comma-separated list of "key/value" pairs, where the key is the avatar id (an integer between 0 and 255 inclusive) and the value is a base64 encoded string. The semantic of the value is application dependent and can for example be a URL to the ARF container. The parameter avatar_id is defined in section 7 of <xref target="ISO.IEC.23090-39"/>.</t>
        <t>avatar-lods:
It indicates which levels of detail are used in the avatar animation stream. This parameter is a comma-separated list of integers. Each item in this list corresponds to a level of detail as defined in section 7 of <xref target="ISO.IEC.23090-39"/></t>
      </section>
    </section>
    <section anchor="congestion-control-consideration">
      <name>Congestion Control Consideration</name>
      <t>General congestion control considerations for RTP transmission, as described in <xref target="RFC3550"/>, also apply to avatar streaming over RTP. By adjusting the SDP 'avatar-lods' parameter, it is possible to reduce processing load and optimize bandwidth usage, thereby partially mitigating congestion issues. The ability to adapt to the level of detail dynamically allows senders or receivers to manage computational complexity and network resource consumption based on system constraints or user context. Moreover, in use cases such as video conferencing, different levels of detail may be applied to different parts of the avatar and transmitted via separate streams.</t>
    </section>
    <section anchor="sdp-considerations">
      <name>SDP Considerations</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>
      <t>The media name in the "m=" line of SDP MUST be application.</t>
      <t>The encoding name in the "a=rtpmap" line of SDP MUST be ampg</t>
      <t>The clock rate in the "a=rtpmap" line may be any sampling rate and SHOULD match the acu_timescale value of the AAU CONFIG unit <xref target="ISO.IEC.23090-39"/>.</t>
      <t>The OPTIONAL parameters (defined in <xref target="optional-param"/>), 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>
      <t>An example of media representation corresponding to the avatar animation RTP payload in SDP is as follows:</t>
      <artwork><![CDATA[
m=application 43291 UDP/TLS/RTP/SAVPF 120 a=rtpmap:120 ampg/8000
a=fmtp:120 
frameworks=urn:mpeg:avatar:v1:openxr:face,urn:mpeg:avatar:v1:
openxr:body;version=2025;avatar-ids=1/ 
aHR0cDovL2V4YW1wbGUuY29tL2F2YXRhcjEuYXJm,
2/aHR0cDovL2V4YW1wbGUuY29tL2F2YXRhcjIuYXJm;avatar-lods=0,1,2
]]></artwork>
      <section anchor="sdp-offeranswer-considerations">
        <name>SDP Offer/Answer Considerations</name>
        <t>When using the offer/answer procedure described in <xref target="RFC3264"/> to negotiate the use of avatar animations, the following considerations apply:</t>
        <t>The SDP parameter version identifies the version of the avatar animation specification. It MUST be used symmetrically in SDP offer and answer, and it MUST NOT be changed in subsequent offers or answers within the same session. If it is not specified, the initial version of the specification SHOULD be assumed. Any receiver compliant with <xref target="ISO.IEC.23090-39"/> must accept any stream with a compatible version.</t>
        <t>The properties expressed using SDP parameters other than 'version' are provided as recommendations for efficient data transmission and are not binding, meaning that a sender is encouraged but not required to conform to the parameters specified by the receiver. These properties may be set to different values in offers and answers. These properties may be updated in subsequent offers or answers. These properties can be sent by a sender to reflect the characteristics of bitstreams and can be set by a receiver to reflect the capabilities and configurations of the local player device, or a preferred set of bitstream properties.</t>
        <t>The parameter frameworks indicates that the AAUs of the stream carry animation data that conforms to the one or more framework names (URNs) signalled with this parameter. The sender uses this parameter to indicate the formats of data transported within the AAUs of the stream. The receiver, to be able to render the animations, needs to support the formats associated with signalled frameworks. The receiver uses this parameter to indicate the desired framework names.</t>
        <t>The parameter avatar-ids indicates that a stream corresponds to the one or more avatar IDs signalled with this parameter. The sender uses this parameter to indicate that the AAUs of the stream carry data corresponding to the signalled avatar IDs. The receiver uses this parameter to indicate the avatar IDs it wishes to receive data for.</t>
        <t>The parameter avatar-lods indicates that the AAUs of the stream correspond to one or more levels of detail signalled with this parameter. The sender uses this parameter to indicate available LoDs, and the receiver uses it to select the desired LoD. To render the animations, the receiver MUST have loaded the corresponding assets associated with the selected level(s) of detail.</t>
        <t>A receiver may ignore any part of a received stream, e.g., that it does not have support for rendering.</t>
      </section>
      <section anchor="declarative-sdp-considerations">
        <name>Declarative SDP Considerations</name>
        <t>When avatar animation over RTP is offered with SDP in a declarative style, the parameters capable of indicating both bitstream properties as well as receiver capabilities are used to indicate only bitstream properties. For example, in this case, the parameters frameworks, avatar-ids, and avatar-lods declare the values used by the bitstream, not the capabilities and configurations for receiving bitstreams. A receiver of the SDP is required to support all parameters and values of the parameters provided; otherwise, the receiver MUST reject or not participate in the session. It falls on the creator of the session to use values that are expected to be supported by the receiving application.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="avatar-animation-media-registration">
        <name>Avatar Animation Media Registration</name>
        <t>New media types will be registered with IANA; see <xref target="format-param"/>.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <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"/>.</t>
      <t>For example, an avatar may contain sensitive information derived from a user's personal data, and thus requires protection against leakage or tampering during transmission. When avatar data is delivered over a network or downloaded from a server, it is critical to ensure its integrity and confidentiality to prevent unauthorized access, modification, or unauthorized disclosure.</t>
      <t>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 lies with 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>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="ISO.IEC.23090-39" target="https://www.mpeg.org/standards/MPEG-I/39/">
          <front>
            <title>Information technology - Coded representation of immersive media - Part 39: Avatar Representation Format</title>
            <author>
              <organization>ISO/IEC</organization>
            </author>
            <date year="2025"/>
          </front>
          <seriesInfo name="ISO/IEC" value="23090-39"/>
        </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="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="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="RFC5104">
          <front>
            <title>Codec Control Messages in the RTP Audio-Visual Profile with Feedback (AVPF)</title>
            <author fullname="S. Wenger" initials="S." surname="Wenger"/>
            <author fullname="U. Chandra" initials="U." surname="Chandra"/>
            <author fullname="M. Westerlund" initials="M." surname="Westerlund"/>
            <author fullname="B. Burman" initials="B." surname="Burman"/>
            <date month="February" year="2008"/>
            <abstract>
              <t>This document specifies a few extensions to the messages defined in the Audio-Visual Profile with Feedback (AVPF). They are helpful primarily in conversational multimedia scenarios where centralized multipoint functionalities are in use. However, some are also usable in smaller multicast environments and point-to-point calls.</t>
              <t>The extensions discussed are messages related to the ITU-T Rec. H.271 Video Back Channel, Full Intra Request, Temporary Maximum Media Stream Bit Rate, and Temporal-Spatial Trade-off. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5104"/>
          <seriesInfo name="DOI" value="10.17487/RFC5104"/>
        </reference>
        <reference anchor="RFC3264">
          <front>
            <title>An Offer/Answer Model with Session Description Protocol (SDP)</title>
            <author fullname="J. Rosenberg" initials="J." surname="Rosenberg"/>
            <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
            <date month="July" year="2002"/>
            <abstract>
              <t>This document defines a mechanism by which two entities can make use of the Session Description Protocol (SDP) to arrive at a common view of a multimedia session between them. In the model, one participant offers the other a description of the desired session from their perspective, and the other participant answers with the desired session from their perspective. This offer/answer model is most useful in unicast sessions where information from both participants is needed for the complete view of the session. The offer/answer model is used by protocols like the Session Initiation Protocol (SIP). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3264"/>
          <seriesInfo name="DOI" value="10.17487/RFC3264"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+09aW8bR5bfBeg/FGRgLSIkJcpnGHh3GMuKNWvZGh2ZZAaD
oEgWyY6b3Ux3UzJteX/7vquOPkjJsRIsFsNADtldXfXq1bvr1etOp7O9VURF
bPpq5+ziVJ3qVZzqsTpKs7ku1CTN1OBKFzpTZ2aRmdwkhS6iNLENdgdnRy01
SKI5Xz4vMqPnO9tbejjMzFVfQacd6bSjqaftrXE6SvQchhxnelJ0IlNM4F4x
SjPTyYqFtOvsP4KmuoB2nw4HF68+b2/l1HtfHb+6ONreGsG9aZqt+iovxttb
0SLrqyJb5sXB/v63+wcAA7Tuq4tMJ/kizYrtres0ez/N0uWir2S87S3sVSfj
X3ScJjDUyuTbW4uor/5ZpKO2yuG5zExy+Laa8xeAfq4XiyiZ/guf1stilmb9
7S2lOviPUlGS99Xr8676WSdTvsTTfb1aJnn0PrieZlOYTVKY7DCaRoWO+bKZ
6yjuqxm3766g/V8ibDXmVt1ROueWo3SZFIiCy/NBFYSfumpsYKFWIQw/6avI
ZKUbm4H4QA90x2aSrm4D4qVO9FhX4Rh01Ws9/6hDMAazuRnzZXUXKDS2786w
/d2AwEtVQI676vt0qT9GH6MQlmMExd4IofnbUsfQ/7wEyffvLgf/OP7H8V9+
K6Lub9JiAy7wv4SYJboyff6t1PH5u+7xq5fdg0dAqp1H3/b5acuKx8mEHwGW
KsxolqRxOl2pjnqZjgHYrMyL6URF87nJchhBwWQiDS1PdVYo6Hgj/+7wsAEN
u8nvAIh7AKI0YUY82D94wr9zk0UmjwBO95g8AK1kUjInnU1NAdRcFIu8v7d3
fX3dnS/MtAvD7BHv6Wyc752cvvqhc7z36Ns9xFBkEUA4U+rs6OVBr/et+/7s
0VP7/fn+8+fue+/ZY/v90ZMn++7686dPg+s9+/3xk+dP3PVnPXf9Se/A9fPs
YL8XfD/wbfb9WAdP6fv2VqfTUXoIgkqPCpzIxSzKYU3mqUqXRRwlJkeRqBYi
Z3mWOQnaYmaUdpKUZZ00UDoHlp3A42MgZWop2HbIVhaVapdRuXHhW23bzySN
4/QapBlQ1cRkGYxQpDgeSPYu/qNgAkDeizSHW0Bq0q2X+ZdJBDPYHQwuW9Dp
KF6OsTedKLiiZkaPQd4AaOqjyQALmZqD3KV7Cz16b4q8qy4AjhAr8pCdOwLI
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
YhZXtYAAAA==

-->

</rfc>
