-diff --git a/libavformat/avformat.h b/libavformat/avformat.h
-index e91e7f1d33..0f9b26a6d3 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
-@@ -480,6 +480,9 @@ typedef struct AVProbeData {
+@@ -499,6 +499,9 @@
The user or muxer can override this through
AVFormatContext.avoid_negative_ts
*/
#define AVFMT_SEEK_TO_PTS 0x4000000 /**< Seeking is based on PTS */
-@@ -650,7 +653,8 @@ typedef struct AVInputFormat {
+@@ -670,7 +673,8 @@
/**
* Can use flags: AVFMT_NOFILE, AVFMT_NEEDNUMBER, AVFMT_SHOW_IDS,
* AVFMT_NOTIMESTAMPS, AVFMT_GENERIC_INDEX, AVFMT_TS_DISCONT, AVFMT_NOBINSEARCH,
+ * AVFMT_SEEK_NOSTREAMS
*/
int flags;
-
-diff --git a/libavformat/dv.c b/libavformat/dv.c
-index e99422d4b5..58ce1bbb5f 100644
+
--- a/libavformat/dv.c
+++ b/libavformat/dv.c
-@@ -642,6 +642,7 @@ static int dv_probe(const AVProbeData *p)
- AVInputFormat ff_dv_demuxer = {
+@@ -640,6 +640,7 @@
+ const AVInputFormat ff_dv_demuxer = {
.name = "dv",
.long_name = NULL_IF_CONFIG_SMALL("DV (Digital Video)"),
+ .flags = AVFMT_SEEK_NOSTREAMS,
.priv_data_size = sizeof(RawDVContext),
.read_probe = dv_probe,
.read_header = dv_read_header,
-diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
-index cff7f0cb54..8b6d22aff2 100644
--- a/libavformat/matroskadec.c
+++ b/libavformat/matroskadec.c
-@@ -4251,6 +4251,7 @@ static const AVClass webm_dash_class = {
- AVInputFormat ff_matroska_demuxer = {
- .name = "matroska,webm",
- .long_name = NULL_IF_CONFIG_SMALL("Matroska / WebM"),
-+ .flags = AVFMT_SEEK_NOSTREAMS,
- .extensions = "mkv,mk3d,mka,mks",
- .priv_data_size = sizeof(MatroskaDemuxContext),
- .read_probe = matroska_probe,
-@@ -4264,6 +4265,7 @@ AVInputFormat ff_matroska_demuxer = {
- AVInputFormat ff_webm_dash_manifest_demuxer = {
+@@ -4427,6 +4427,7 @@
+ const AVInputFormat ff_webm_dash_manifest_demuxer = {
.name = "webm_dash_manifest",
.long_name = NULL_IF_CONFIG_SMALL("WebM DASH Manifest"),
+ .flags = AVFMT_SEEK_NOSTREAMS,
+ .priv_class = &webm_dash_class,
+ .priv_data_size = sizeof(MatroskaDemuxContext),
+ .flags_internal = FF_FMT_INIT_CLEANUP,
+@@ -4439,6 +4440,7 @@
+ const AVInputFormat ff_matroska_demuxer = {
+ .name = "matroska,webm",
+ .long_name = NULL_IF_CONFIG_SMALL("Matroska / WebM"),
++ .flags = AVFMT_SEEK_NOSTREAMS,
+ .extensions = "mkv,mk3d,mka,mks,webm",
.priv_data_size = sizeof(MatroskaDemuxContext),
- .read_header = webm_dash_manifest_read_header,
- .read_packet = webm_dash_manifest_read_packet,
-diff --git a/libavformat/utils.c b/libavformat/utils.c
-index 807d9f10cb..55a444e7b6 100644
---- a/libavformat/utils.c
-+++ b/libavformat/utils.c
-@@ -2486,6 +2486,13 @@ static int seek_frame_internal(AVFormatContext *s, int stream_index,
+ .flags_internal = FF_FMT_INIT_CLEANUP,
+--- a/libavformat/seek.c
++++ b/libavformat/seek.c
+@@ -600,6 +600,13 @@
return seek_frame_byte(s, stream_index, timestamp, flags);
}