mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-06-30 21:08:59 +08:00
In mov demuxer, if multiple h264 stsd are present, do not concatenate streams, fix #2069
Originally committed as revision 25825 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
@ -939,10 +939,14 @@ int ff_mov_read_stsd_entries(MOVContext *c, ByteIOContext *pb, int entries)
|
|||||||
/* Multiple fourcc, we skip JPEG. This is not correct, we should
|
/* Multiple fourcc, we skip JPEG. This is not correct, we should
|
||||||
* export it as a separate AVStream but this needs a few changes
|
* export it as a separate AVStream but this needs a few changes
|
||||||
* in the MOV demuxer, patch welcome. */
|
* in the MOV demuxer, patch welcome. */
|
||||||
|
multiple_stsd:
|
||||||
av_log(c->fc, AV_LOG_WARNING, "multiple fourcc not supported\n");
|
av_log(c->fc, AV_LOG_WARNING, "multiple fourcc not supported\n");
|
||||||
url_fskip(pb, size - (url_ftell(pb) - start_pos));
|
url_fskip(pb, size - (url_ftell(pb) - start_pos));
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
/* we cannot demux concatenated h264 streams because of different extradata */
|
||||||
|
if (st->codec->codec_tag && st->codec->codec_tag == AV_RL32("avc1"))
|
||||||
|
goto multiple_stsd;
|
||||||
sc->pseudo_stream_id = st->codec->codec_tag ? -1 : pseudo_stream_id;
|
sc->pseudo_stream_id = st->codec->codec_tag ? -1 : pseudo_stream_id;
|
||||||
sc->dref_id= dref_id;
|
sc->dref_id= dref_id;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user