ref: fa869134da7609a0d8d0b3fd9b0736eeffe29fe3
parent: 43c260ba54a3f5c3373df1676322edac574d52f7
author: Jean-Marc Valin <[email protected]>
date: Wed Mar 30 22:29:23 EDT 2011
draft update
--- a/doc/draft-ietf-codec-opus.xml
+++ b/doc/draft-ietf-codec-opus.xml
@@ -2,7 +2,7 @@
<!DOCTYPE rfc SYSTEM 'rfc2629.dtd'>
<?rfc toc="yes" symrefs="yes" ?>
-<rfc ipr="trust200902" category="std" docName="draft-ietf-codec-opus-05">
+<rfc ipr="trust200902" category="std" docName="draft-ietf-codec-opus-06">
<front>
<title abbrev="Interactive Audio Codec">Definition of the Opus Audio Codec</title>
@@ -39,7 +39,7 @@
</author>
-<date day="14" month="March" year="2011" />
+<date day="31" month="March" year="2011" />
<area>General</area>
@@ -198,12 +198,22 @@
<t>3: arbitrary number of frames in the packet</t>
</list>
For code 2, the TOC byte is followed by the length of the first frame, encoded as described below.
-For code 3, the TOC byte is followed by a byte encoding the number of frames in the packet, with the MSB indicating VBR. In the VBR case, the byte indicating the number of frames is followed by N-1 frame
+For code 3, the TOC byte is followed by a byte encoding the number of frames in the packet, with
+bit 7 indicating VBR and bit 6 indicating that padding is inserted. In the VBR case, the byte
+indicating the number of frames is followed by N-1 frame
lengths encoded as described below. As an additional limit, the audio duration contained
within a packet MUST NOT exceed 120 ms.
</t>
<t>
+When padding is used, the number of bytes of padding is encoded in the following bytes. Values
+from 0-254 indicate that 0-254 bytes of padding are included at the end. If the value is 255,
+then the padding is 254 bytes, plus the padding value encoded in the next byte. By using code
+255 multiple times, it is possible to add any amount of padding. The padding bytes produced by
+the encoder MUST be zero, but the decoder MUST accept any value for the padding bytes.
+</t>
+
+<t>
The compressed size of the frames (if needed) is indicated -- usually -- with one byte, with the following meaning:
<list style="symbols">
<t>0: No frame (DTX or lost packet)</t>
@@ -2031,8 +2041,9 @@
<t>
Thanks to all other developers, including Raymond Chen, Soeren Skak Jensen, Gregory Maxwell,
Christopher Montgomery, Karsten Vandborg Soerensen, and Timothy Terriberry. We would also
-like to thank Igor Dyakonov, Jan Skoglund and Keith Yan for their help in testing the
-codec.
+like to thank Igor Dyakonov, Jan Skoglund for their help with subjective testing of the
+Opus codec. Thanks to John Ridges, Keith Yan and many others on the Opus and CELT mailing lists
+for their bug reports and feeback.
</t>
</section>
--- a/src/opus.h
+++ b/src/opus.h
@@ -49,7 +49,7 @@
/** An (or more) invalid argument (e.g. out of range) */
#define OPUS_BAD_ARG -1
/** The mode struct passed is invalid */
-#define OPUS_INVALID_MODE -2
+#define OPUS_BUFFER_TOO_SMALL -2
/** An internal error was detected */
#define OPUS_INTERNAL_ERROR -3
/** The data passed (e.g. compressed data to decoder) is corrupted */