shithub: opus

Download patch

ref: a9718e497c0b272f8604be21b06aa580b462ab05
parent: 04584eac3178e3f68dc5f0b07cfc4a1ec3cd2406
author: Jean-Marc Valin <[email protected]>
date: Wed Jun 30 14:08:35 EDT 2010

IETF draft update

--- a/doc/draft-valin-codec-prototype.xml
+++ b/doc/draft-valin-codec-prototype.xml
@@ -45,7 +45,11 @@
 
 <abstract>
 <t>
-This document provides a quick overview of a prototype codec combining the SILK and CELT. Inclusion of other codecs is also possible, we just haven't had time to look into that.
+This document provides a quick overview of a prototype codec combining a linear
+prediction layer (SILK) with an MDCT-based layer (CELT). These codecs are
+used because of the authors' familiarity with the source code, but it does
+not prevent inclusion of code from other codecs as well. This is a
+work in progress.
 </t>
 </abstract>
 </front>
@@ -54,9 +58,24 @@
 
 <section anchor="introduction" title="Introduction">
 <t>
+We propose a hybrid codec based on a linear prediction layer (LP) and an
+MDCT-based enhancement layer. The main idea behind the proposal is that
+the speech low frequencies are usually more efficiently coded using
+linear prediction codecs (such as CELP variants), while the higher frequencies
+are more efficiently coded in the transform domain (e.g. MDCT). For low 
+sampling rates, the MDCT layer is not useful and only the LP-based layer is
+used. On the other hand, non-speech signals are sometimes adequately coded
+using linear prediction, so for music only the MDCT-based layer is used.
+</t>
 
+<t>
+In this proposed prototype, the LP layer is based on the SILK codec and the
+MDCT layer is based on CELT codec. These codecs are
+used because of the authors' familiarity with the source code, but it does
+not prevent inclusion of code from other codecs as well.
 </t>
 
+<t>This is a work in progress.</t>
 </section>
 
 <section anchor="modes" title="Codec Modes">
@@ -67,7 +86,11 @@
 <t>A hybrid (LP+MDCT) mode for full-bandwidth speech at medium bitrates</t>
 <t>An MDCT-only mode for very low delay speech transmission as well as music transmission.</t>
 </list>
-Each of these modes supports a number of difference frame sizes and sampling rates.
+Each of these modes supports a number of difference frame sizes and sampling
+rates. In order to distinguish between the various modes and configurations,
+we need to define a simple header that can used in the transport layer 
+(e.g RTP) to signal this information. The following describes the proposed
+header.
 </t>
 
 <t>
@@ -221,11 +244,12 @@
 </t>
 </section>
 
-
+<!--
 <section anchor="Acknowledgments" title="Acknowledgments">
 <t>
 </t>
 </section> 
+-->
 
 </middle>
 
--- a/src/test_hybrid.c
+++ b/src/test_hybrid.c
@@ -109,7 +109,6 @@
          fprintf (stderr, "hybrid_encode() returned %d\n", len);
          return 1;
       }
-      /* This is for simulating bit errors */
       hybrid_decode(dec, data, len, out, frame_size);
       count++;
       fwrite(out+skip, sizeof(short), (frame_size-skip)*channels, fout);