3.2. Out of Band Transmission . . . . . . . . . . . . . . . . . 10
3.2.1. Packed Headers . . . . . . . . . . . . . . . . . . . . 10
3.2.2. Well Known Configurations . . . . . . . . . . . . . . 12
- 3.3. Loss of Configuration Headers . . . . . . . . . . . . . . 12
+ 3.3. Loss of Configuration Headers . . . . . . . . . . . . . . 13
4. Comment Headers . . . . . . . . . . . . . . . . . . . . . . . 13
- 5. Frame Packetizing . . . . . . . . . . . . . . . . . . . . . . 13
- 5.1. Example Fragmented Vorbis Packet . . . . . . . . . . . . . 14
- 5.2. Packet Loss . . . . . . . . . . . . . . . . . . . . . . . 16
- 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17
- 6.1. Mapping MIME Parameters into SDP . . . . . . . . . . . . . 18
- 6.2. Usage with the SDP Offer/Answer Model . . . . . . . . . . 19
- 7. Congestion Control . . . . . . . . . . . . . . . . . . . . . . 19
- 8. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
- 8.1. Stream Radio . . . . . . . . . . . . . . . . . . . . . . . 20
- 9. Security Considerations . . . . . . . . . . . . . . . . . . . 20
- 10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 20
- 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 21
- 11.1. Normative References . . . . . . . . . . . . . . . . . . . 21
- 11.2. Informative References . . . . . . . . . . . . . . . . . . 22
- Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 23
- Intellectual Property and Copyright Statements . . . . . . . . . . 24
+ 5. Frame Packetizing . . . . . . . . . . . . . . . . . . . . . . 14
+ 5.1. Example Fragmented Vorbis Packet . . . . . . . . . . . . . 15
+ 5.2. Packet Loss . . . . . . . . . . . . . . . . . . . . . . . 17
+ 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 18
+ 6.1. Mapping MIME Parameters into SDP . . . . . . . . . . . . . 19
+ 6.2. Usage with the SDP Offer/Answer Model . . . . . . . . . . 20
+ 7. Congestion Control . . . . . . . . . . . . . . . . . . . . . . 21
+ 8. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
+ 8.1. Stream Radio . . . . . . . . . . . . . . . . . . . . . . . 21
+ 9. Security Considerations . . . . . . . . . . . . . . . . . . . 22
+ 10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 22
+ 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 22
+ 11.1. Normative References . . . . . . . . . . . . . . . . . . . 22
+ 11.2. Informative References . . . . . . . . . . . . . . . . . . 23
+ Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 24
+ Intellectual Property and Copyright Statements . . . . . . . . . . 25
Required Parameters:
- None.
+ None
Optional Parameters:
- None.
+ None
Encoding considerations:
- This type is only defined for transfer via non RTP protocols as
- specified in RFC XXXX.
+ This media type contains binary data.
Security Considerations:
- See Section 6 of RFC 3047.
+ See Section 6 of RFC XXXX.
+
+
+
- Interoperability considerations: none
- Published specification:
Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
- See RFC XXXX for details.
+ Interoperability considerations:
+
+ None
+
+ Published specification:
+
+ RFC XXXX [RFC Editor: please replace by the RFC number of this
+ memo, when published]
Applications which use this media type:
- Vorbis encoded audio, configuration data.
+ Vorbis encoded audio, configuration data.
+
+ Additional information:
- Additional information: none
+ None
Person & email address to contact for further information:
- Luca Barbato: <lu_zero@gentoo.org>
+ Luca Barbato: <lu_zero@gentoo.org>
+ IETF Audio/Video Transport Working Group
Intended usage: COMMON
- Author/Change controller:
+ Restriction on usage:
+
+ This media type doesn't depend on the transport.
+
+ Author:
- Author: Luca Barbato
+ Luca Barbato
- Change controller: IETF AVT Working Group
+ Change controller:
+
+ IETF AVT Working Group
3.2.2. Well Known Configurations
Known has the Ident highest bit set. Every Well Known List MUST
contain at most 2^23 items.
+
+
+
+Barbato Expires April 24, 2006 [Page 12]
+\f
+Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
+
+
{FIXME: reference to bzip2, gz, and sha1sum} This off band delivery
method MUST be signaled as "out_band/wkc/list_name" using the
mandated parameter delivery-method. An optional configuration-uri
3.3. Loss of Configuration Headers
Unlike the loss of raw Vorbis payload data, loss of a configuration
-
-
-
-Barbato Expires April 24, 2006 [Page 12]
-\f
-Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
-
-
header can lead to a situation where it will not be possible to
successfully decode the stream.
completely. The details on the format of the comments can be found
in the Vorbis documentation [12].
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Barbato Expires April 24, 2006 [Page 13]
+\f
+Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
+
+
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
5. Frame Packetizing
Each RTP packet contains either one Vorbis packet fragment, or an
-
-
-
-Barbato Expires April 24, 2006 [Page 13]
-\f
-Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
-
-
integer number of complete Vorbis packets (up to a max of 15 packets,
since the number of packets is defined by a 4 bit value).
for fragmented packet reception the timestamp field of fragmented
packets MUST be the same as the first packet sent, with the sequence
number incremented as normal for the subsequent RTP packets. The
+
+
+
+Barbato Expires April 24, 2006 [Page 14]
+\f
+Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
+
+
length field shows the fragment length.
5.1. Example Fragmented Vorbis Packet
Figure 10: Example Fragmented Packet (Packet 1)
+ In this packet the initial sequence number is 1000 and the timestamp
+ is xxxxx. The Fragment type is set to 1, the number of packets field
+ is set to 0, and as the payload is raw Vorbis data the VDT field is
+ set to 0.
-Barbato Expires April 24, 2006 [Page 14]
+
+
+
+
+
+
+
+
+
+
+
+
+
+Barbato Expires April 24, 2006 [Page 15]
\f
Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
- In this packet the initial sequence number is 1000 and the timestamp
- is xxxxx. The Fragment type is set to 1, the number of packets field
- is set to 0, and as the payload is raw Vorbis data the VDT field is
- set to 0.
-
Packet 2:
0 1 2 3
-Barbato Expires April 24, 2006 [Page 15]
+
+
+
+
+
+Barbato Expires April 24, 2006 [Page 16]
\f
Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
-Barbato Expires April 24, 2006 [Page 16]
+Barbato Expires April 24, 2006 [Page 17]
\f
Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
Required Parameters:
- delivery-method: indicates the delivery methods in use, the possible
- values are:inline, in_band, out_band
+ delivery-method: indicates the delivery methods in use, the
+ possible values are: inline, in_band, out_band/specific_name
+ Where "specific_name" is the name of the out of band delivery
+ method.
- configuration: the base16 [9] (hexadecimal) representation of the
- Packed Headers (Section 3.2.1).
+ configuration: the base16 [9] (hexadecimal) representation of the
+ Packed Headers (Section 3.2.1).
- {FIXME:xref missing} Optional Parameters:
+ Optional Parameters:
- configuration-uri: the URI of the configuration headers in case of
- out of band transmission. In the form of
- "protocol://path/to/resource/". Depending on the specific method the
- single ident packet could be retrived by their number, or aggregated
- in a single stream, aggregates MAY be compressed using gz or bzip2
- and an sha1 checksum MAY be provided in the form of
- "protocol://path/to/resource/!sha1hash"
+ configuration-uri: the URI of the configuration headers in case of
+ out of band transmission. In the form of
+ "protocol://path/to/resource/". Depending on the specific
+ method the single ident packet could be retrived by their
+ number, or aggregated in a single stream, aggregates MAY be
+ compressed using gz or bzip2 and an sha1 checksum MAY be
+ provided in the form of "protocol://path/to/resource/!
+ sha1hash"
Encoding considerations:
- This type is only defined for transfer via RTP as specified in RFC
- XXXX.
+ This media type is framed and contains binary data.
Security Considerations:
- See Section 6 of RFC 3047.
+ See Section 6 of RFC XXXX.
- Interoperability considerations: none
+ Interoperability considerations:
- Published specification:
+ None
- See the Vorbis documentation [12] for details.
- Applications which use this media type:
- Audio streaming and conferencing tools
-Barbato Expires April 24, 2006 [Page 17]
+
+Barbato Expires April 24, 2006 [Page 18]
\f
Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
- Additional information: none
+ Published specification:
+
+ RFC XXXX [RFC Editor: please replace by the RFC number of this
+ memo, when published]
+
+ Ogg Vorbis I specification: Codec setup and packet decode.
+ Available from the Xiph website, http://www.xiph.org
+
+ Applications which use this media type:
+
+ Audio streaming and conferencing tools
+
+ Additional information:
+
+ None
Person & email address to contact for further information:
- Luca Barbato: <lu_zero@gentoo.org>
+ Luca Barbato: <lu_zero@gentoo.org>
+ IETF Audio/Video Transport Working Group
- Intended usage: COMMON
+ Intended usage:
+
+ COMMON
+
+ Restriction on usage:
+
+ This media type depends on RTP framing, and hence is only defined
+ for transfer via RTP [3]
- Author/Change controller:
+ Author:
- Author: Luca Barbato
+ Luca Barbato
+
+ Change controller:
+
+ IETF AVT Working Group
- Change controller: IETF AVT Working Group
6.1. Mapping MIME Parameters into SDP
[5], which is commonly used to describe RTP sessions. When SDP is
used to specify sessions the mapping are as follows:
+
+
+
+
+
+Barbato Expires April 24, 2006 [Page 19]
+\f
+Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
+
+
o The MIME type ("audio") goes in SDP "m=" as the media name.
o The MIME subtype ("vorbis") goes in SDP "a=rtpmap" as the encoding
The port value is specified by the server application bound to the
address specified in the c attribute. The bitrate value and channels
specified in the rtpmap attribute MUST match the Vorbis sample rate
-
-
-
-Barbato Expires April 24, 2006 [Page 18]
-\f
-Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
-
-
value. An example is found below.
c=IN IP4/6
6.2. Usage with the SDP Offer/Answer Model
The offer, as described in An Offer/Answer Model Session Description
+
+
+
+Barbato Expires April 24, 2006 [Page 20]
+\f
+Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
+
+
Protocol [8], may contain a large number of delivery methods per
single fmtp attribute, the answerer MUST remove every delivery-method
and configuration-uri not supported. All the parameters MUST not be
in such situations, the main scope of this section is to explain
better usage of the transmission vectors.
-
-
-
-
-Barbato Expires April 24, 2006 [Page 19]
-\f
-Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
-
-
8.1. Stream Radio
That is one of the most common situation: one single server streaming
Configurations per session to avoid packing them and send the same
Configuration with different Ident tags
+
+
+Barbato Expires April 24, 2006 [Page 21]
+\f
+Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
+
+
A clientside optimization would be keep a tag list of the
Configurations per session and don't process configuration packets
already known.
and draft-kerr-avt-vorbis-rtp-04.txt. The MIME type section is a
continuation of draft-short-avt-rtp-vorbis-mime-00.txt.
-
-
-
-Barbato Expires April 24, 2006 [Page 20]
-\f
-Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
-
-
Thanks to the AVT, Ogg Vorbis Communities / Xiph.org including Steve
Casner, Aaron Colwell, Ross Finlayson, Fluendo, Ramon Garcia, Pascal
Hennequin, Ralph Giles, Tor-Einar Jarnbjo, Colin Law, John Lazzaro,
"RTP: A Transport Protocol for real-time applications",
RFC 3550.
+
+
+Barbato Expires April 24, 2006 [Page 22]
+\f
+Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
+
+
[4] Schulzrinne, H. and S. Casner, "RTP Profile for Audio and Video
Conferences with Minimal Control.", RFC 3551.
Internet Draft (draft-ietf-avt-rtcp-feedback-11: Work in
progress).
-
-
-
-
-
-Barbato Expires April 24, 2006 [Page 21]
-\f
-Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
-
-
11.2. Informative References
[11] "libvorbis: Available from the Xiph website,
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Barbato Expires April 24, 2006 [Page 22]
+Barbato Expires April 24, 2006 [Page 23]
\f
Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
-Barbato Expires April 24, 2006 [Page 23]
+Barbato Expires April 24, 2006 [Page 24]
\f
Internet-Draft draft-kerr-avt-vorbis-rtp-05 October 2005
-Barbato Expires April 24, 2006 [Page 24]
+Barbato Expires April 24, 2006 [Page 25]
\f
The following IANA considerations MUST only be applied to the packed headers.
</t>
-<t>
-MIME media type name: audio
-</t>
-<t>
-MIME subtype: vorbis-config
+<vspace blankLines="1" />
+
+<list style="hanging">
+<t hangText="MIME media type name:"> audio </t>
+
+<vspace blankLines="1" />
+
+<t hangText="MIME subtype:"> vorbis-config </t>
+
+<vspace blankLines="1" />
+
+<t hangText="Required Parameters:">
+<vspace blankLines="1" />
+None
</t>
-<t>
-Required Parameters:</t><t>
-None.
+<vspace blankLines="1" />
+
+<t hangText="Optional Parameters:">
+<vspace blankLines="1" />
+None
</t>
-<t>
-Optional Parameters: </t><t>
-None.
+<vspace blankLines="1" />
+
+<t hangText="Encoding considerations:">
+<vspace blankLines="1" />
+This media type contains binary data.
</t>
-<t>
-Encoding considerations:</t><t>
-This type is only defined for transfer via non RTP protocols as specified in RFC XXXX.
+<vspace blankLines="1" />
+
+<t hangText="Security Considerations:">
+<vspace blankLines="1" />
+See Section 6 of RFC XXXX.
</t>
-<t>
-Security Considerations:</t><t>
-See Section 6 of RFC 3047.
+<vspace blankLines="1" />
+
+<t hangText="Interoperability considerations:">
+<vspace blankLines="1" />
+None
</t>
-<t>
-Interoperability considerations: none
+<vspace blankLines="1" />
+
+<t hangText="Published specification:">
+<vspace blankLines="1" />
+RFC XXXX [RFC Editor: please replace by the RFC number of this memo,
+ when published]
</t>
-<t>
-Published specification:</t>
-<t>See RFC XXXX for details.</t>
+<vspace blankLines="1" />
-<t>
-Applications which use this media type:</t><t>
+<t hangText="Applications which use this media type:">
+<vspace blankLines="1" />
Vorbis encoded audio, configuration data.
</t>
-<t>
-Additional information: none
+<vspace blankLines="1" />
+
+<t hangText="Additional information:">
+<vspace blankLines="1" />
+None
</t>
-<t>
-Person & email address to contact for further information:</t><t>
+<vspace blankLines="1" />
+
+<t hangText="Person & email address to contact for further information:">
+<vspace blankLines="1" />
Luca Barbato: <lu_zero@gentoo.org>
+<vspace blankLines="0" />
+IETF Audio/Video Transport Working Group
</t>
-<t>
-Intended usage: COMMON
+<vspace blankLines="1" />
+
+<t hangText="Intended usage:">
+COMMON
</t>
-<t>Author/Change controller:</t>
-<t>Author: Luca Barbato</t>
-<t>Change controller: IETF AVT Working Group</t>
+<vspace blankLines="1" />
+
+<t hangText="Restriction on usage:">
+<vspace blankLines="1" />
+This media type doesn't depend on the transport.
+</t>
+
+<vspace blankLines="1" />
+
+<t hangText="Author:">
+<vspace blankLines="1" />
+Luca Barbato</t>
+
+<vspace blankLines="1" />
+<t hangText="Change controller:">
+<vspace blankLines="1" />
+IETF AVT Working Group</t>
+</list>
</section>
</section>
</section>
<section anchor="IANA Considerations" title="IANA Considerations">
-<t>
-MIME media type name: audio
-</t>
-<t>
-MIME subtype: vorbis
-</t>
+<vspace blankLines="1" />
-<t>
-Required Parameters:
-</t>
+<list style="hanging">
+<t hangText="MIME media type name:"> audio </t>
-<t>
-delivery-method: indicates the delivery methods in use, the possible values are:inline, in_band, out_band
-</t><t>
-configuration: the <xref target="rfc3548">base16</xref> (hexadecimal) representation of the <xref target="Packed Headers">Packed Headers</xref>.
-</t>
+<vspace blankLines="1" />
-<t>
-{FIXME:xref missing}
-Optional Parameters: </t><t>
-configuration-uri: the URI of the configuration headers in case of out of band transmission. In the form of "protocol://path/to/resource/". Depending on the specific method the single ident packet could be retrived by their number, or aggregated in a single stream, aggregates MAY be compressed using gz or bzip2 and an sha1 checksum MAY be provided in the form of "protocol://path/to/resource/!sha1hash"
-</t>
+<t hangText="MIME subtype:"> vorbis </t>
-<t>
-Encoding considerations:</t><t>
-This type is only defined for transfer via RTP as specified
-in RFC XXXX.
-</t>
+<vspace blankLines="1" />
+
+<t hangText="Required Parameters:">
+
+<vspace blankLines="1" />
+
+<list style="hanging">
+<t hangText="delivery-method:"> indicates the delivery methods in use, the possible values are: inline, in_band, out_band/specific_name<vspace blankLines="0" />
+Where "specific_name" is the name of the out of band delivery method.
-<t>
-Security Considerations:</t><t>
-See Section 6 of RFC 3047.
</t>
-<t>
-Interoperability considerations: none
+<vspace blankLines="1" />
+
+<t hangText="configuration:"> the <xref target="rfc3548">base16</xref> (hexadecimal) representation of the <xref target="Packed Headers">Packed Headers</xref>.
+</t>
+</list>
</t>
-<t>
-Published specification:</t>
-<t>See the Vorbis documentation <xref target="vorbis-spec-ref"></xref> for details.</t>
+<vspace blankLines="1" />
-<t>
-Applications which use this media type:</t><t>
-Audio streaming and conferencing tools
+<t hangText="Optional Parameters:">
+
+<vspace blankLines="1" />
+
+<list style="hanging">
+<t hangText="configuration-uri:"> the URI of the configuration headers in case of out of band transmission. In the form of "protocol://path/to/resource/". Depending on the specific method the single ident packet could be retrived by their number, or aggregated in a single stream, aggregates MAY be compressed using gz or bzip2 and an sha1 checksum MAY be provided in the form of "protocol://path/to/resource/! sha1hash"</t>
+</list>
</t>
-<t>
-Additional information: none
+<vspace blankLines="1" />
+
+<t hangText="Encoding considerations:">
+<vspace blankLines="1" />
+This media type is framed and contains binary data.
</t>
-<t>
-Person & email address to contact for further information:</t><t>
-Luca Barbato: <lu_zero@gentoo.org>
+<vspace blankLines="1" />
+
+<t hangText="Security Considerations:">
+<vspace blankLines="1" />
+See Section 6 of RFC XXXX.</t>
+
+<vspace blankLines="1" />
+
+<t hangText="Interoperability considerations:">
+<vspace blankLines="1" />
+None</t>
+
+<vspace blankLines="1" />
+
+<t hangText="Published specification:">
+
+<vspace blankLines="1" />
+
+<t> RFC XXXX [RFC Editor: please replace by the RFC number of this memo, when published]</t>
+<vspace blankLines="1" />
+<t>Ogg Vorbis I specification: Codec setup and packet decode. Available from the Xiph website, http://www.xiph.org</t>
+
</t>
-<t>
-Intended usage: COMMON
+<vspace blankLines="1" />
+
+<t hangText="Applications which use this media type:">
+<vspace blankLines="1"/>
+Audio streaming and conferencing tools </t>
+
+<vspace blankLines="1" />
+
+<t hangText="Additional information:">
+<vspace blankLines="1" />
+None </t>
+
+<vspace blankLines="1" />
+
+<t hangText="Person & email address to contact for further information:">
+
+<vspace blankLines="1" />
+
+<t>Luca Barbato: <lu_zero@gentoo.org></t>
+<t>IETF Audio/Video Transport Working Group</t>
+
</t>
-<t>Author/Change controller:</t>
-<t>Author: Luca Barbato</t>
-<t>Change controller: IETF AVT Working Group</t>
+<vspace blankLines="1" />
+
+<t hangText="Intended usage:">
+<vspace blankLines="1" />
+COMMON</t>
+
+<vspace blankLines="1" />
+
+<t hangText="Restriction on usage:">
+<vspace blankLines="1" />
+This media type depends on RTP framing, and hence is only defined for transfer via <xref target="rfc3550">RTP</xref></t>
+
+<vspace blankLines="1" />
+
+<t hangText="Author:">
+<vspace blankLines="1"/>Luca Barbato</t>
+
+<vspace blankLines="1" />
+
+<t hangText="Change controller:"><vspace blankLines="1"/> IETF AVT Working Group</t>
+
+<vspace blankLines="1" />
+
+</list>
<section anchor="Mapping MIME Parameters into SDP" title="Mapping MIME Parameters into SDP">