mirror of https://git.ffmpeg.org/ffmpeg.git
dca and aac decoders use float_to_int16_interleave, so check for
the C version of that rather than float_to_int16. Fixes output on ARM/VFP Originally committed as revision 20192 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
12bf71b691
commit
144fec83b3
|
@ -527,7 +527,7 @@ static av_cold int aac_decode_init(AVCodecContext *avccontext)
|
||||||
// 32768 - Required to scale values to the correct range for the bias method
|
// 32768 - Required to scale values to the correct range for the bias method
|
||||||
// for float to int16 conversion.
|
// for float to int16 conversion.
|
||||||
|
|
||||||
if (ac->dsp.float_to_int16 == ff_float_to_int16_c) {
|
if (ac->dsp.float_to_int16_interleave == ff_float_to_int16_interleave_c) {
|
||||||
ac->add_bias = 385.0f;
|
ac->add_bias = 385.0f;
|
||||||
ac->sf_scale = 1. / (-1024. * 32768.);
|
ac->sf_scale = 1. / (-1024. * 32768.);
|
||||||
ac->sf_offset = 0;
|
ac->sf_offset = 0;
|
||||||
|
|
|
@ -1324,7 +1324,7 @@ static av_cold int dca_decode_init(AVCodecContext * avctx)
|
||||||
s->samples_chanptr[i] = s->samples + i * 256;
|
s->samples_chanptr[i] = s->samples + i * 256;
|
||||||
avctx->sample_fmt = SAMPLE_FMT_S16;
|
avctx->sample_fmt = SAMPLE_FMT_S16;
|
||||||
|
|
||||||
if(s->dsp.float_to_int16 == ff_float_to_int16_c) {
|
if(s->dsp.float_to_int16_interleave == ff_float_to_int16_interleave_c) {
|
||||||
s->add_bias = 385.0f;
|
s->add_bias = 385.0f;
|
||||||
s->scale_bias = 1.0 / 32768.0;
|
s->scale_bias = 1.0 / 32768.0;
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue