diff --git a/celt/celt_lpc.c b/celt/celt_lpc.c index d2addbf2..b69884d4 100644 --- a/celt/celt_lpc.c +++ b/celt/celt_lpc.c @@ -101,7 +101,7 @@ void celt_fir(const opus_val16 *x, opus_val32 sum = SHL32(EXTEND32(x[i]), SIG_SHIFT); for (j=0;j=1;j--) { @@ -161,11 +161,16 @@ void _celt_autocorr( } #ifdef FIXED_POINT { - opus_val32 ac0=0; + opus_val32 ac0; int shift; - for(i=0;i=0) { for (i = lag, d = 0; i < n; i++) - d += xx[i] * xx[i-lag]; + d = MAC16_16(d, xx[i], xx[i-lag]); ac[lag] = d; /*printf ("%f ", ac[lag]);*/ lag--;