[xiph-commits] r10716 - trunk/speex/libspeex

jm at svn.xiph.org jm at svn.xiph.org
Mon Jan 9 17:15:39 PST 2006


Author: jm
Date: 2006-01-09 17:15:36 -0800 (Mon, 09 Jan 2006)
New Revision: 10716

Modified:
   trunk/speex/libspeex/mdf.c
Log:
documentation


Modified: trunk/speex/libspeex/mdf.c
===================================================================
--- trunk/speex/libspeex/mdf.c	2006-01-09 12:18:01 UTC (rev 10715)
+++ trunk/speex/libspeex/mdf.c	2006-01-10 01:15:36 UTC (rev 10716)
@@ -44,19 +44,26 @@
    Cancellation With Double-Talk. Submitted to IEEE Transactions on Speech 
    and Audio Processing, 2006.
    
+   There is no explicit double-talk detection, but a continuous variation
+   in the learning rate based on residual echo, double-talk and background
+   noise.
+   
    About the fixed-point version:
    All the signals are represented with 16-bit words. The filter weights 
    are represented with 32-bit words, but only the top 16 bits are used
-   in most cases. The lower 16 bits are completely reliable (due to the
+   in most cases. The lower 16 bits are completely unreliable (due to the
    fact that the update is done only on the top bits), but help in the
    adaptation -- probably by removing a "threshold effect" due to
-   quantization when the gradient is small.
+   quantization (rounding going to zero) when the gradient is small.
    
    Another kludge that seems to work good: when performing the weight
    update, we only move half the way toward the "goal" this seems to
-   reduce the effect of quantization noise in the update phase.
+   reduce the effect of quantization noise in the update phase. This
+   can be seen as applying a gradient descent on a "soft constraint"
+   instead of having a hard constraint.
    
- */
+*/
+
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif



More information about the commits mailing list