diff --git a/libavcodec/acelp_filters.c b/libavcodec/acelp_filters.c index 03c4a544f6..a75d2291cd 100644 --- a/libavcodec/acelp_filters.c +++ b/libavcodec/acelp_filters.c @@ -85,22 +85,22 @@ void ff_acelp_convolve_circ( int16_t* fc_out, const int16_t* fc_in, const int16_t* filter, - int subframe_size) + int len) { int i, k; - memset(fc_out, 0, subframe_size * sizeof(int16_t)); + memset(fc_out, 0, len * sizeof(int16_t)); /* Since there are few pulses over an entire subframe (i.e. almost all fc_in[i] are zero) it is faster to loop over fc_in first. */ - for(i=0; i> 15; + fc_out[k] += (fc_in[i] * filter[len + k - i]) >> 15; - for(k=i; k> 15; } } diff --git a/libavcodec/acelp_filters.h b/libavcodec/acelp_filters.h index 6436e10d18..324be3b63d 100644 --- a/libavcodec/acelp_filters.h +++ b/libavcodec/acelp_filters.h @@ -75,7 +75,7 @@ void ff_acelp_convolve_circ( int16_t* fc_out, const int16_t* fc_in, const int16_t* filter, - int subframe_size); + int len); /** * LP synthesis filter.