diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 75da12a3ccc2e5437f93c8bf42f9e88a00b2eb8a..6002c9ada06f08ae5bfcf92c7c1d1a04eb7d9f5f 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -1064,6 +1064,11 @@ static void matroska_execute_seekhead(MatroskaDemuxContext *matroska) MatroskaLevel level; int i; + // we should not do any seeking in the streaming case + if (url_is_streamed(matroska->ctx->pb) || + (matroska->ctx->flags & AVFMT_FLAG_IGNIDX)) + return; + for (i=0; i<seekhead_list->nb_elem; i++) { int64_t offset = seekhead[i].pos + matroska->segment_start;