diff --git a/libavcodec/binkaudio.c b/libavcodec/binkaudio.c index b9d3df89c8..5fbc2de6d6 100644 --- a/libavcodec/binkaudio.c +++ b/libavcodec/binkaudio.c @@ -222,6 +222,11 @@ static void decode_block(BinkAudioContext *s, short *out, int use_dct) ff_rdft_calc(&s->trans.rdft, coeffs); } + if (s->dsp.float_to_int16_interleave == ff_float_to_int16_interleave_c) { + for (i = 0; i < s->channels; i++) + for (j = 0; j < s->frame_len; j++) + s->coeffs_ptr[i][j] = 385.0 + s->coeffs_ptr[i][j]*(1.0/32767.0); + } s->dsp.float_to_int16_interleave(out, (const float **)s->coeffs_ptr, s->frame_len, s->channels); if (!s->first) {