From 3c8d75e65b526459a86d818ad9f98605a3f48576 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Wed, 3 Feb 2010 00:35:10 +0000 Subject: [PATCH] Only set duration for streams where it is likely correct. Fixes issue1120 Originally committed as revision 21620 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/avidec.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/avidec.c b/libavformat/avidec.c index 3d68e470b..7a2ee05f9 100644 --- a/libavformat/avidec.c +++ b/libavformat/avidec.c @@ -415,7 +415,6 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap) st->nb_frames = get_le32(pb); st->start_time = 0; - st->duration = st->nb_frames; get_le32(pb); /* buffer size */ get_le32(pb); /* quality */ ast->sample_size = get_le32(pb); /* sample ssize */ @@ -442,6 +441,8 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap) av_log(s, AV_LOG_ERROR, "unknown stream type %X\n", tag1); goto fail; } + if(ast->sample_size == 0) + st->duration = st->nb_frames; ast->frame_offset= ast->cum_len; url_fskip(pb, size - 12 * 4); break; -- 2.11.0