diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-02-22 17:33:22 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-02-25 05:19:34 +0100 |
commit | 97a740acc58792bf296f7f8b5ee3253fa8a48f0c (patch) | |
tree | 83169a8cfcdb2710eb4c392f04a708328fb202da | |
parent | 02f241d1ed10cdd2c8d304d306e71a1a0d79cec3 (diff) | |
download | ffmpeg-97a740acc58792bf296f7f8b5ee3253fa8a48f0c.tar.gz |
aac: reconfigure output on pop
Fixes Ticket1918
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 6f77122bf5712da1d860a0ad7174181fd0bcffd9)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/aacdec.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c index 34cc18bda6..4f0cf4b418 100644 --- a/libavcodec/aacdec.c +++ b/libavcodec/aacdec.c @@ -112,6 +112,10 @@ static VLC vlc_scalefactors; static VLC vlc_spectral[11]; +static int output_configure(AACContext *ac, + uint8_t layout_map[MAX_ELEM_ID*4][3], int tags, + int channel_config, enum OCStatus oc_type); + #define overread_err "Input buffer exhausted before END element found\n" static int count_channels(uint8_t (*layout)[3], int tags) @@ -373,6 +377,8 @@ static void pop_output_configuration(AACContext *ac) { ac->oc[1] = ac->oc[0]; ac->avctx->channels = ac->oc[1].channels; ac->avctx->channel_layout = ac->oc[1].channel_layout; + output_configure(ac, ac->oc[1].layout_map, ac->oc[1].layout_map_tags, + ac->oc[1].m4ac.chan_config, ac->oc[1].status); } } |