From ecc04b4f2f29ac676e6c1d1ebf20ec45f5385f1e Mon Sep 17 00:00:00 2001
From: Xinzheng Zhang <zhangxzheng@gmail.com>
Date: Wed, 14 Sep 2016 16:13:45 +0800
Subject: [PATCH] avformat/utils: fix timebase error in avformat_seek_file()

When there is only one stream and stream_index has not specified,
The ts has been transferd by the timebase of stream0 without modifying the stream_index
In this condation it cause seek failure.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
---
 libavformat/utils.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/libavformat/utils.c b/libavformat/utils.c
index cbaeef0d68d..d605a969a96 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -2418,6 +2418,7 @@ int avformat_seek_file(AVFormatContext *s, int stream_index, int64_t min_ts,
             max_ts = av_rescale_rnd(max_ts, time_base.den,
                                     time_base.num * (int64_t)AV_TIME_BASE,
                                     AV_ROUND_DOWN | AV_ROUND_PASS_MINMAX);
+            stream_index = 0;
         }
 
         ret = s->iformat->read_seek2(s, stream_index, min_ts,
-- 
GitLab