[FFmpeg-cvslog] aacdec: Avoid unneeded reinit due to ADTS headers

Michael Niedermayer git at videolan.org
Thu Nov 17 18:14:39 CET 2011


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Thu Nov 17 17:42:47 2011 +0100| [5a2b3f3a52070232a68582a502fb60a9226ca86a] | committer: Michael Niedermayer

aacdec: Avoid unneeded reinit due to ADTS headers
Fixes Ticket 662

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=5a2b3f3a52070232a68582a502fb60a9226ca86a
---

 libavcodec/aacdec.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c
index 117cd58..2166928 100644
--- a/libavcodec/aacdec.c
+++ b/libavcodec/aacdec.c
@@ -2081,7 +2081,7 @@ static int parse_adts_frame_header(AACContext *ac, GetBitContext *gb)
 
     size = avpriv_aac_parse_header(gb, &hdr_info);
     if (size > 0) {
-        if (hdr_info.chan_config) {
+        if (hdr_info.chan_config && (hdr_info.chan_config!=ac->m4ac.chan_config || ac->m4ac.sample_rate!=hdr_info.sample_rate)) {
             enum ChannelPosition new_che_pos[4][MAX_ELEM_ID];
             memset(new_che_pos, 0, 4 * MAX_ELEM_ID * sizeof(new_che_pos[0][0]));
             ac->m4ac.chan_config = hdr_info.chan_config;



More information about the ffmpeg-cvslog mailing list