diff options
author | Marton Balint <cus@passwd.hu> | 2018-12-13 22:13:09 +0100 |
---|---|---|
committer | Marton Balint <cus@passwd.hu> | 2018-12-30 21:06:19 +0100 |
commit | 7f42276aa91c5fe1ad43f43e58a7645a674a3fda (patch) | |
tree | bf5941cb38abf7b16ab8ee79eae627f611ac7a99 /libavformat/concatdec.c | |
parent | f9e947845f9ac5ccb84cf5e6f4121ec2e23b9946 (diff) | |
download | ffmpeg-7f42276aa91c5fe1ad43f43e58a7645a674a3fda.tar.gz |
avformat/concatdec: always allow seeking to start
Signed-off-by: Marton Balint <cus@passwd.hu>
Diffstat (limited to 'libavformat/concatdec.c')
-rw-r--r-- | libavformat/concatdec.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/libavformat/concatdec.c b/libavformat/concatdec.c index bbe13136fa..3ed95a4538 100644 --- a/libavformat/concatdec.c +++ b/libavformat/concatdec.c @@ -692,6 +692,13 @@ static int real_seek(AVFormatContext *avf, int stream, left = 0; right = cat->nb_files; + + /* Always support seek to start */ + if (ts <= 0) + right = 1; + else if (!cat->seekable) + return AVERROR(ESPIPE); /* XXX: can we use it? */ + while (right - left > 1) { int mid = (left + right) / 2; if (ts < cat->files[mid].start_time) @@ -728,8 +735,6 @@ static int concat_seek(AVFormatContext *avf, int stream, AVFormatContext *cur_avf_saved = cat->avf; int ret; - if (!cat->seekable) - return AVERROR(ESPIPE); /* XXX: can we use it? */ if (flags & (AVSEEK_FLAG_BYTE | AVSEEK_FLAG_FRAME)) return AVERROR(ENOSYS); cat->avf = NULL; |