summaryrefslogtreecommitdiffstats
path: root/player
diff options
context:
space:
mode:
Diffstat (limited to 'player')
-rw-r--r--player/loadfile.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/player/loadfile.c b/player/loadfile.c
index d9d6a0036c..472304d5f0 100644
--- a/player/loadfile.c
+++ b/player/loadfile.c
@@ -548,6 +548,9 @@ void mp_switch_track_n(struct MPContext *mpctx, int order, enum stream_type type
if (current)
current->selected = false;
+ if (track && track->demuxer == mpctx->demuxer)
+ demux_set_enable_refresh_seeks(mpctx->demuxer, true);
+
reselect_demux_streams(mpctx);
mpctx->current_track[order][type] = track;
@@ -557,6 +560,8 @@ void mp_switch_track_n(struct MPContext *mpctx, int order, enum stream_type type
reselect_demux_streams(mpctx);
+ demux_set_enable_refresh_seeks(mpctx->demuxer, false);
+
if (type == STREAM_VIDEO && order == 0) {
reinit_video_chain(mpctx);
} else if (type == STREAM_AUDIO && order == 0) {