mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-02-04 06:08:26 +02:00
avcodec/aac/aacdec: Move channel number check out of init_dsp()
Also move initializing random_state. Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
parent
e4e9144a5c
commit
ef16882e8f
@ -1152,13 +1152,6 @@ static av_cold int init_dsp(AVCodecContext *avctx)
|
||||
const float *const scalep = is_fixed ? &scale_fixed : &scale_float;
|
||||
enum AVTXType tx_type = is_fixed ? AV_TX_INT32_MDCT : AV_TX_FLOAT_MDCT;
|
||||
|
||||
if (avctx->ch_layout.nb_channels > MAX_CHANNELS) {
|
||||
av_log(avctx, AV_LOG_ERROR, "Too many channels\n");
|
||||
return AVERROR_INVALIDDATA;
|
||||
}
|
||||
|
||||
ac->random_state = 0x1f2e3d4c;
|
||||
|
||||
#define MDCT_INIT(s, fn, len, sval) \
|
||||
scale_fixed = (sval) * 128.0f; \
|
||||
scale_float = (sval) / 32768.0f; \
|
||||
@ -1241,6 +1234,13 @@ static av_cold int aac_decode_init_internal(AVCodecContext *avctx)
|
||||
}
|
||||
}
|
||||
|
||||
if (avctx->ch_layout.nb_channels > MAX_CHANNELS) {
|
||||
av_log(avctx, AV_LOG_ERROR, "Too many channels\n");
|
||||
return AVERROR_INVALIDDATA;
|
||||
}
|
||||
|
||||
ac->random_state = 0x1f2e3d4c;
|
||||
|
||||
return init_dsp(avctx);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user