diff options
author | Mohamed Naufal Basheer <naufal11@gmail.com> | 2012-07-10 19:58:39 +0200 |
---|---|---|
committer | Kostya Shishkov <kostya.shishkov@gmail.com> | 2012-07-22 07:58:53 +0200 |
commit | 8aac5585fa7e50d899103efaa3aa4b2a774b16b4 (patch) | |
tree | 8955db7348e78c4ef9c4124784aa52ead12c9bbd /libavcodec/celp_filters.c | |
parent | 51a5ddfa017f5229ff18da58f7cef908fd312138 (diff) | |
download | ffmpeg-8aac5585fa7e50d899103efaa3aa4b2a774b16b4.tar.gz |
Add a shift parameter to celp_lp_synthesis_filter()
This is intended for reuse by the G.723.1 decoder
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
Diffstat (limited to 'libavcodec/celp_filters.c')
-rw-r--r-- | libavcodec/celp_filters.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/celp_filters.c b/libavcodec/celp_filters.c index 849cda439e..4e5bcda79a 100644 --- a/libavcodec/celp_filters.c +++ b/libavcodec/celp_filters.c @@ -58,7 +58,7 @@ void ff_celp_circ_addf(float *out, const float *in, int ff_celp_lp_synthesis_filter(int16_t *out, const int16_t *filter_coeffs, const int16_t *in, int buffer_length, int filter_length, int stop_on_overflow, - int rounder) + int shift, int rounder) { int i,n; @@ -67,7 +67,7 @@ int ff_celp_lp_synthesis_filter(int16_t *out, const int16_t *filter_coeffs, for (i = 1; i <= filter_length; i++) sum -= filter_coeffs[i-1] * out[n-i]; - sum = (sum >> 12) + in[n]; + sum = ((sum >> 12) + in[n]) >> shift; if (sum + 0x8000 > 0xFFFFU) { if (stop_on_overflow) |