Module: libav Branch: master Commit: a0d17b6d45b8550bd8826baa9f8eb4e1a596525a
Author: Justin Ruggles <justin.rugg...@gmail.com> Committer: Justin Ruggles <justin.rugg...@gmail.com> Date: Sun Aug 7 17:51:13 2011 -0400 ac3enc: scale floating-point coupling channel coefficients in scale_coefficients() rather than in apply_channel_coupling() --- libavcodec/ac3enc_float.c | 7 ++++--- libavcodec/ac3enc_template.c | 4 ---- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/libavcodec/ac3enc_float.c b/libavcodec/ac3enc_float.c index 8e74aaf..32ec558 100644 --- a/libavcodec/ac3enc_float.c +++ b/libavcodec/ac3enc_float.c @@ -104,9 +104,10 @@ static int normalize_samples(AC3EncodeContext *s) static void scale_coefficients(AC3EncodeContext *s) { int chan_size = AC3_MAX_COEFS * s->num_blocks; - s->ac3dsp.float_to_fixed24(s->fixed_coef_buffer + chan_size, - s->mdct_coef_buffer + chan_size, - chan_size * s->channels); + int cpl = s->cpl_on; + s->ac3dsp.float_to_fixed24(s->fixed_coef_buffer + (chan_size * !cpl), + s->mdct_coef_buffer + (chan_size * !cpl), + chan_size * (s->channels + cpl)); } diff --git a/libavcodec/ac3enc_template.c b/libavcodec/ac3enc_template.c index 3db49de..e7b8967 100644 --- a/libavcodec/ac3enc_template.c +++ b/libavcodec/ac3enc_template.c @@ -168,10 +168,6 @@ static void apply_channel_coupling(AC3EncodeContext *s) /* coefficients must be clipped in order to be encoded */ clip_coefficients(&s->dsp, cpl_coef, num_cpl_coefs); - - /* scale coupling coefficients from float to 24-bit fixed-point */ - s->ac3dsp.float_to_fixed24(&block->fixed_coef[CPL_CH][cpl_start], - cpl_coef, num_cpl_coefs); } /* calculate energy in each band in coupling channel and each fbw channel */ _______________________________________________ libav-commits mailing list libav-commits@libav.org https://lists.libav.org/mailman/listinfo/libav-commits