shithub: opus

Download patch

ref: 5e55b207403e7a83f060c13717ff18a522d94530
parent: e6c9d9efd65189c47944fd669794ce984914831e
author: Jean-Marc Valin <[email protected]>
date: Thu Mar 5 05:03:38 EST 2009

ptime update

--- a/doc/ietf/draft-valin-celt-rtp-profile.xml
+++ b/doc/ietf/draft-valin-celt-rtp-profile.xml
@@ -102,15 +102,15 @@
 <t>
 <figure>
 <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                            |
-     +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
-     |                 one or more frames of CELT ....              |
-     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-     |        one or more frames of CELT ....                       |
-     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     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                            |
+    +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
+    |       s           one or more frames of CELT ....             |
+    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    |         one or more frames of CELT ....                       |
+    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 ]]></artwork>
 </figure>
 </t>
@@ -122,18 +122,18 @@
 <t>
 <figure>
 <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             |
-     |                              ...                              |
-     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     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>
@@ -448,11 +448,11 @@
 <list style="empty">
 <t>b=AS: The maximum bandwidth (in kbit/s) allowed for CELT, excluding the header overhead. The default is 64 kbit/s.</t>
 
-<t>ptime: The desired packetization time. If multiple frame sizes are offered, ptime is the minimum packetization time desired. The default is 20 ms as specified in []</t>
+<t>ptime: The desired packetization time. The sender SHOULD choose a number of frames per packet that corresponds to the smallest packetization time greater or equal to the specified ptime for the selected frame size. The default is 20 ms as specified in <xref target="rfc3551"></xref></t>
 
-<t>maxptime: The maximum packetization time desired. The default is "no maximum".</t>
+<t>maxptime: The maximum packetization time desired. If the maximum is lower than the smallest packetization time determined from the chosen frame size (as described above), then that packtization time SHOULD be used despite the maxptime value. The default is "no maximum".</t>
 
-</list>	
+</list>
 </t>
 
 <t>
@@ -462,10 +462,8 @@
 
 <t>
 <list style="empty">
-<t>frame-size: duration of each frame in samples. The default is 256.</t>
+<t>frame-size: The frame size is the duration of each frame in samples. If more than one frame size is supported, a comma-separated list can be used. The default is 480.</t>
 
-<t>nb-frames: number of frames per packet (per stream). The default is 1.</t>
-
 <t>mapping: Optional string describing the multi-channel mapping. </t>
 
 </list>	
@@ -483,7 +481,7 @@
 </t>
 
 <t>
-Care must be taken when setting the value of max-size and nb-frames so that the 
+Care must be taken when setting the value of ptime: and b=AS: so that the
 RTP packet size does not exceed the path MTU.
 </t>
 
@@ -506,7 +504,7 @@
 frequency using the 'a=rtpmap' line.  Any number from 96 to 127
 could have been chosen (the allowed range for dynamic types). If there
 is more than one channel being encoded the rtpmap MUST specify the channel
-count.  
+count.
 </t>
 
 <t>
@@ -537,8 +535,9 @@
 <vspace blankLines="1" />
 <list style="empty">
    	<t>m=audio 8008 RTP/AVP 97</t>
+	<t>a=ptime: 21</t>
 	<t>a=rtpmap:97 CELT/44100</t>
-	<t>a=fmtp:97 frame-size=512;nb-frames=2;</t>
+	<t>a=fmtp:97 frame-size=512;</t>
 </list>	
 </t>
 
@@ -586,7 +585,7 @@
 
 <t>
 Ambisonic channels MUST follow the Furse-Malham naming and weighing
-conventions for up to third order spherical<xref target="Higher-order-Ambisonic-systems"></xref>.
+conventions for up to third order spherical<xref target="Ambisonic"></xref>.
 Higher order ambisonic support is application defined but MUST NOT reuse any of WXYZRSTUVKLMNOPQ
 for higher order components. For example, second order spherical ambisonics SHOULD use the
 mapping "mapping=1,1,1,1,1,1,1,1,1/AW,AX,AY,AZ,AR,AS,AT,AU,AV". Any set of Ambisonic channels
@@ -610,8 +609,9 @@
 <vspace blankLines="1" />
 <list style="empty">
 <t>m=audio 8008 RTP/AVP 97</t>
+<t>a=ptime: 5</t>
 <t>a=rtpmap:97 CELT/44100/2</t>
-<t>a=fmtp:97 frame-size=256;nb-frames=1;</t>
+<t>a=fmtp:97 frame-size=256;</t>
 </list> 
 Which specifies a single two-channel CELT stream according to the default
 mapping.
@@ -826,7 +826,7 @@
 <seriesInfo name="CELT website" value="http://www.celt-codec.org/" />
 </reference> 
 
-<reference anchor="Higher-order-Ambisonic-systems">
+<reference anchor="Ambisonic">
 <front>
 <title>Higher order Ambisonic systems</title>
 <author initials="D." surname="Malham" fullname="Dave