shithub: opus

Download patch

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 */