diff options
author | jm <jm@0101bb08-14d6-0310-b084-bc0e0c8e3800> | 2008-02-14 01:08:18 +0300 |
---|---|---|
committer | jm <jm@0101bb08-14d6-0310-b084-bc0e0c8e3800> | 2008-02-14 01:08:18 +0300 |
commit | 5e543d1ff7b3c107721ec15f282412e043bbfb56 (patch) | |
tree | 33476da7c8aff61ab07403223157d8980ee8cc24 | |
parent | a8a8ff663f69892cba2067b1c12a7ab97cbce3da (diff) |
Thorvald Natvig: Fix for the fixed-point scaling of impulse response query
git-svn-id: http://svn.xiph.org/trunk/speex@14503 0101bb08-14d6-0310-b084-bc0e0c8e3800
-rw-r--r-- | libspeex/mdf.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libspeex/mdf.c b/libspeex/mdf.c index bc24d36..618a410 100644 --- a/libspeex/mdf.c +++ b/libspeex/mdf.c @@ -1180,13 +1180,13 @@ int speex_echo_ctl(SpeexEchoState *st, int request, void *ptr) { #ifdef FIXED_POINT for (i=0;i<N;i++) - st->wtmp2[i] = EXTRACT16(PSHR32(st->W[j*N+i],16)); + st->wtmp2[i] = EXTRACT16(PSHR32(st->W[j*N+i],16+NORMALIZE_SCALEDOWN)); spx_ifft(st->fft_table, st->wtmp2, st->wtmp); #else spx_ifft(st->fft_table, &st->W[j*N], st->wtmp); #endif for(i=0;i<n;i++) - filt[j*n+i] = PSHR32(MULT16_16(32767,st->wtmp[i]), WEIGHT_SHIFT); + filt[j*n+i] = PSHR32(MULT16_16(32767,st->wtmp[i]), WEIGHT_SHIFT-NORMALIZE_SCALEDOWN); } } break; |