[FFmpeg-soc] [soc]: r4167 - amr/amrnbfloatdec.c
kmalaussene
subversion at mplayerhq.hu
Wed Mar 4 22:44:08 CET 2009
Author: kmalaussene
Date: Wed Mar 4 22:44:08 2009
New Revision: 4167
Log:
Replace division by multiplication in fixed_gain_smooth.
Modified:
amr/amrnbfloatdec.c
Modified: amr/amrnbfloatdec.c
==============================================================================
--- amr/amrnbfloatdec.c Wed Mar 4 22:42:26 2009 (r4166)
+++ amr/amrnbfloatdec.c Wed Mar 4 22:44:08 2009 (r4167)
@@ -706,9 +706,9 @@ static float fixed_gain_smooth(AMRContex
// if diff has been >0.65 for 10 frames (40 subframes) no smoothing is applied
if((p->diff_count = diff > 0.65 ? p->diff_count+1 : 0) < 40) {
// calculate the fixed gain smoothing factor (k_m)
- const float smoothing_factor = FFMIN(0.25, FFMAX(0.0, diff - 0.4))/0.25;
+ const float smoothing_factor = FFMIN(1.0, FFMAX(0.0, 4.0*diff - 1.6));
// calculate the mean fixed gain for the current subframe
- const float fixed_gain_mean = (p->fixed_gain[0] + p->fixed_gain[1] + p->fixed_gain[2] + p->fixed_gain[3] + p->fixed_gain[4])/5.0;
+ const float fixed_gain_mean = (p->fixed_gain[0] + p->fixed_gain[1] + p->fixed_gain[2] + p->fixed_gain[3] + p->fixed_gain[4])*0.2;
// calculate the smoothed fixed gain
p->fixed_gain[4] = smoothing_factor*p->fixed_gain[4] + (1.0 - smoothing_factor)*fixed_gain_mean;
}
More information about the FFmpeg-soc
mailing list