summaryrefslogtreecommitdiffstats
path: root/player
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-08-03 23:09:11 +0200
committerwm4 <wm4@nowhere>2015-08-03 23:09:11 +0200
commit59d44ecef17790739211c56e7b2ca5c2682d855a (patch)
tree14cf21778b636bf5b479e8b40bb9c5f833fe0255 /player
parentc3803e3254dabd6934f2dec7e08c1ea0f5e690aa (diff)
downloadmpv-59d44ecef17790739211c56e7b2ca5c2682d855a.tar.bz2
mpv-59d44ecef17790739211c56e7b2ca5c2682d855a.tar.xz
video: unbreak EOF with video-only files that have timestamp resets
Normally when there's a timestamp reset, we make audio resync to make sure audio and video line up (again). But in video-only mode, just setting audio to resyncing breaks EOF detection, because there's no code which would get audio_status out of this bogus state.
Diffstat (limited to 'player')
-rw-r--r--player/video.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/player/video.c b/player/video.c
index 4a594241d6..1e30d289ec 100644
--- a/player/video.c
+++ b/player/video.c
@@ -574,7 +574,8 @@ static void handle_new_frame(struct MPContext *mpctx)
MP_WARN(mpctx, "Invalid video timestamp: %f -> %f\n",
mpctx->video_pts, pts);
frame_time = 0;
- mpctx->audio_status = STATUS_SYNCING;
+ if (mpctx->d_audio)
+ mpctx->audio_status = STATUS_SYNCING;
}
}
mpctx->video_next_pts = pts;