[FFmpeg-devel] [PATCH 1/4] lavc/aacdec: handle case where extradata is set between init and first packet

Rodger Combs rodger.combs at gmail.com
Tue Sep 22 03:49:41 CEST 2015


---
 libavcodec/aacdec_template.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/libavcodec/aacdec_template.c b/libavcodec/aacdec_template.c
index c2d7d05..a999013 100644
--- a/libavcodec/aacdec_template.c
+++ b/libavcodec/aacdec_template.c
@@ -3118,6 +3118,14 @@ static int aac_decode_frame(AVCodecContext *avctx, void *data,
         }
     }
 
+    if (!avctx->channels && avctx->extradata_size > 0) {
+        if ((err = decode_audio_specific_config(ac, ac->avctx, &ac->oc[1].m4ac,
+                                                avctx->extradata,
+                                                avctx->extradata_size * 8LL,
+                                                1)) < 0)
+            return AVERROR_INVALIDDATA;
+    }
+
     ac->dmono_mode = 0;
     if (jp_dualmono && jp_dualmono_size > 0)
         ac->dmono_mode =  1 + *jp_dualmono;
-- 
2.5.1



More information about the ffmpeg-devel mailing list