aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2015-04-29 06:26:18 +0200
committerMichael Niedermayer <michaelni@gmx.at>2015-04-29 18:26:28 +0200
commit14e9a20083c9c17c9431754bf13e458293c1ead4 (patch)
tree1a8b0aceeb59a6c3fea71dd8a0d0c5322fffc4b7
parent8a710ddc7c111b43cd32a4e523fc2dafd53a0592 (diff)
downloadffmpeg-14e9a20083c9c17c9431754bf13e458293c1ead4.tar.gz
avformat/mpegts: Also parse the FMC descriptor if the codec has not been identified yet
Fixes Detecting AAC with such descriptor if the parts needed for detection are later in the stream Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavformat/mpegts.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index 2caa6c6474..0e5c2ba00e 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -1591,7 +1591,9 @@ int ff_parse_mpeg2_descriptor(AVFormatContext *fc, AVStream *st, int stream_type
if (get16(pp, desc_end) < 0)
break;
if (mp4_descr_count > 0 &&
- (st->codec->codec_id == AV_CODEC_ID_AAC_LATM || st->request_probe > 0) &&
+ (st->codec->codec_id == AV_CODEC_ID_AAC_LATM ||
+ (st->request_probe == 0 && st->codec->codec_id == AV_CODEC_ID_NONE) ||
+ st->request_probe > 0) &&
mp4_descr->dec_config_descr_len && mp4_descr->es_id == pid) {
AVIOContext pb;
ffio_init_context(&pb, mp4_descr->dec_config_descr,