From e2bf00ce4643ea3c09b146831dec485acedf6072 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Thu, 5 Dec 2013 17:38:25 +0100 Subject: [PATCH] avformat/mov: calculate rfps from the first 100 frames of the index This reduces the amount of frames that need to be demuxed in av_find_stream_info() Signed-off-by: Michael Niedermayer --- libavformat/mov.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavformat/mov.c b/libavformat/mov.c index 94bd32fd28..7c0c89767b 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -2159,6 +2159,8 @@ static void mov_build_index(MOVContext *mov, AVStream *st) av_dlog(mov->fc, "AVIndex stream %d, sample %d, offset %"PRIx64", dts %"PRId64", " "size %d, distance %d, keyframe %d\n", st->index, current_sample, current_offset, current_dts, sample_size, distance, keyframe); + if (st->nb_index_entries < 100) + ff_rfps_add_frame(mov->fc, st, current_dts); } current_offset += sample_size; @@ -3410,6 +3412,8 @@ static int mov_read_header(AVFormatContext *s) } } + ff_rfps_calculate(s); + return 0; }