diff --git a/celt b/celt index c914f5ea509bfb0274858e6f2794bd1f7e3df57a..d25dd2bff9f111fcc8d2de802c1cca337db27873 160000 --- a/celt +++ b/celt @@ -1 +1 @@ -Subproject commit c914f5ea509bfb0274858e6f2794bd1f7e3df57a +Subproject commit d25dd2bff9f111fcc8d2de802c1cca337db27873 diff --git a/doc/draft-ietf-codec-opus.xml b/doc/draft-ietf-codec-opus.xml index 45f36fd6855258ad53e82e83fa552c089fc8caee..afbfa93642e92e493a7d3a9b2afaa5bfa93086dc 100644 --- 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,11 +198,21 @@ There is thus a total of 32 configurations, encoded in 5 bits. One bit is used t <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"> @@ -2031,8 +2041,9 @@ This document has no actions for IANA. <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> diff --git a/src/opus.h b/src/opus.h index f3704a5c5ed0a9a58fa652bce7ac3f1deda9af9b..c328b97d68e94e77990b2eeb775333cf180a4495 100644 --- a/src/opus.h +++ b/src/opus.h @@ -49,7 +49,7 @@ extern "C" { /** 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 */