qtdemux: fragmented support; forego check for short streams

... as some bogus files may indicate streams of 0 duration in moov,
while indicating the complete movie duration in mvhd (the latter should
be in mehd).
This commit is contained in:
Mark Nauwelaerts 2010-10-28 16:49:41 +02:00
parent 30065f8f01
commit 4bcad634f8

View file

@ -5680,7 +5680,9 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
if (G_UNLIKELY (stream->timescale == 0 || qtdemux->timescale == 0))
goto corrupt_file;
if (qtdemux->duration != G_MAXINT64 && stream->duration != G_MAXINT32) {
/* fragmented files may have bogus duration in moov */
if (!qtdemux->fragmented &&
qtdemux->duration != G_MAXINT64 && stream->duration != G_MAXINT32) {
guint64 tdur1, tdur2;
/* don't overflow */