diff options
author | Alex Converse <alex.converse@gmail.com> | 2011-06-29 13:41:47 -0700 |
---|---|---|
committer | Alex Converse <alex.converse@gmail.com> | 2011-07-06 22:38:59 -0700 |
commit | 7f01a4192cdf4565eadee457f76e6b5196e35e0b (patch) | |
tree | a8280b2eb890adec9a35903eff60b7fc889b4c43 /libavformat | |
parent | f02f745e4aa070e5fabf1156b75c340171304933 (diff) | |
download | ffmpeg-streaming-7f01a4192cdf4565eadee457f76e6b5196e35e0b.zip ffmpeg-streaming-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.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libavformat/adtsenc.c b/libavformat/adtsenc.c index e858a81..75649e2 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); |