aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat
diff options
context:
space:
mode:
authorAlex Converse <alex.converse@gmail.com>2011-06-29 13:41:47 -0700
committerAlex Converse <alex.converse@gmail.com>2011-07-06 22:38:59 -0700
commit7f01a4192cdf4565eadee457f76e6b5196e35e0b (patch)
treea8280b2eb890adec9a35903eff60b7fc889b4c43 /libavformat
parentf02f745e4aa070e5fabf1156b75c340171304933 (diff)
downloadffmpeg-7f01a4192cdf4565eadee457f76e6b5196e35e0b.tar.gz
adts: Fix PCE copying.
Parse the extension flag bit when reading the MPEG4 AudioSpecificConfig. This has nothing to do with SBR/PS contradictory to what was noted when it was removed.
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/adtsenc.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavformat/adtsenc.c b/libavformat/adtsenc.c
index e858a81d92..75649e24dc 100644
--- a/libavformat/adtsenc.c
+++ b/libavformat/adtsenc.c
@@ -59,6 +59,10 @@ int ff_adts_decode_extradata(AVFormatContext *s, ADTSContext *adts, uint8_t *buf
av_log(s, AV_LOG_ERROR, "Scalable configurations are not allowed in ADTS\n");
return -1;
}
+ if (get_bits(&gb, 1)) {
+ av_log(s, AV_LOG_ERROR, "Extension flag is not allowed in ADTS\n");
+ return -1;
+ }
if (!adts->channel_conf) {
init_put_bits(&pb, adts->pce_data, MAX_PCE_SIZE);