Commit 5348d7b6 authored by Michael Niedermayer's avatar Michael Niedermayer

Merge commit 'edd9ea3f'

* commit 'edd9ea3f':
  aacdec: Refactor aac_er_decode_frame.
Merged-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parents fd242b46 edd9ea3f
...@@ -2852,11 +2852,12 @@ static int aac_decode_er_frame(AVCodecContext *avctx, void *data, ...@@ -2852,11 +2852,12 @@ static int aac_decode_er_frame(AVCodecContext *avctx, void *data,
int *got_frame_ptr, GetBitContext *gb) int *got_frame_ptr, GetBitContext *gb)
{ {
AACContext *ac = avctx->priv_data; AACContext *ac = avctx->priv_data;
const MPEG4AudioConfig *const m4ac = &ac->oc[1].m4ac;
ChannelElement *che; ChannelElement *che;
int err, i; int err, i;
int samples = 1024; int samples = 1024;
int chan_config = ac->oc[1].m4ac.chan_config; int chan_config = m4ac->chan_config;
int aot = ac->oc[1].m4ac.object_type; int aot = m4ac->object_type;
if (aot == AOT_ER_AAC_LD || aot == AOT_ER_AAC_ELD) if (aot == AOT_ER_AAC_LD || aot == AOT_ER_AAC_ELD)
samples >>= 1; samples >>= 1;
...@@ -2868,13 +2869,13 @@ static int aac_decode_er_frame(AVCodecContext *avctx, void *data, ...@@ -2868,13 +2869,13 @@ static int aac_decode_er_frame(AVCodecContext *avctx, void *data,
// The FF_PROFILE_AAC_* defines are all object_type - 1 // The FF_PROFILE_AAC_* defines are all object_type - 1
// This may lead to an undefined profile being signaled // This may lead to an undefined profile being signaled
ac->avctx->profile = ac->oc[1].m4ac.object_type - 1; ac->avctx->profile = aot - 1;
ac->tags_mapped = 0; ac->tags_mapped = 0;
if (chan_config < 0 || chan_config >= 8) { if (chan_config < 0 || chan_config >= 8) {
avpriv_request_sample(avctx, "Unknown ER channel configuration %d", avpriv_request_sample(avctx, "Unknown ER channel configuration %d",
ac->oc[1].m4ac.chan_config); chan_config);
return AVERROR_INVALIDDATA; return AVERROR_INVALIDDATA;
} }
for (i = 0; i < tags_per_config[chan_config]; i++) { for (i = 0; i < tags_per_config[chan_config]; i++) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment