From 5a2b3f3a52070232a68582a502fb60a9226ca86a Mon Sep 17 00:00:00 2001
From: Michael Niedermayer <michaelni@gmx.at>
Date: Thu, 17 Nov 2011 17:42:47 +0100
Subject: [PATCH] aacdec: Avoid unneeded reinit due to ADTS headers Fixes
 Ticket 662

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
---
 libavcodec/aacdec.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c
index 117cd587ee7..21669282945 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;
-- 
GitLab