summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--player/loadfile.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/player/loadfile.c b/player/loadfile.c
index ded987ae9e..d854ab04a9 100644
--- a/player/loadfile.c
+++ b/player/loadfile.c
@@ -362,8 +362,11 @@ void reselect_demux_stream(struct MPContext *mpctx, struct track *track)
if (!track->stream)
return;
double pts = get_current_time(mpctx);
- if (pts != MP_NOPTS_VALUE)
+ if (pts != MP_NOPTS_VALUE) {
pts += get_track_seek_offset(mpctx, track);
+ if (track->type == STREAM_SUB)
+ pts -= 10.0;
+ }
demuxer_select_track(track->demuxer, track->stream, pts, track->selected);
if (track == mpctx->seek_slave)
mpctx->seek_slave = NULL;