[FFmpeg-cvslog] r22167 - trunk/libavcodec/binkaudio.c
pross
subversion
Wed Mar 3 10:51:56 CET 2010
Author: pross
Date: Wed Mar 3 10:51:56 2010
New Revision: 22167
Log:
Perform coefficient transformations in Bink Audio DCT decoder (issue1770)
Modified:
trunk/libavcodec/binkaudio.c
Modified: trunk/libavcodec/binkaudio.c
==============================================================================
--- trunk/libavcodec/binkaudio.c Wed Mar 3 10:44:30 2010 (r22166)
+++ trunk/libavcodec/binkaudio.c Wed Mar 3 10:51:56 2010 (r22167)
@@ -125,7 +125,7 @@ static av_cold int decode_init(AVCodecCo
if (CONFIG_BINKAUDIO_RDFT_DECODER && avctx->codec->id == CODEC_ID_BINKAUDIO_RDFT)
ff_rdft_init(&s->trans.rdft, frame_len_bits, IRIDFT);
else if (CONFIG_BINKAUDIO_DCT_DECODER)
- ff_dct_init(&s->trans.dct, frame_len_bits, 0);
+ ff_dct_init(&s->trans.dct, frame_len_bits, 1);
else
return -1;
@@ -211,8 +211,11 @@ static void decode_block(BinkAudioContex
}
}
- if (CONFIG_BINKAUDIO_DCT_DECODER && use_dct)
+ if (CONFIG_BINKAUDIO_DCT_DECODER && use_dct) {
+ coeffs[0] /= 0.5;
ff_dct_calc (&s->trans.dct, coeffs);
+ s->dsp.vector_fmul_scalar(coeffs, coeffs, s->frame_len / 2, s->frame_len);
+ }
else if (CONFIG_BINKAUDIO_RDFT_DECODER)
ff_rdft_calc(&s->trans.rdft, coeffs);
}
More information about the ffmpeg-cvslog
mailing list