summaryrefslogtreecommitdiffstats
path: root/player/playloop.c
diff options
context:
space:
mode:
Diffstat (limited to 'player/playloop.c')
-rw-r--r--player/playloop.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/player/playloop.c b/player/playloop.c
index 2e714823f9..3db5818773 100644
--- a/player/playloop.c
+++ b/player/playloop.c
@@ -976,7 +976,15 @@ static void handle_playback_restart(struct MPContext *mpctx)
return;
}
+ // Video needed, but not started yet -> wait.
+ if (mpctx->vo_chain && !mpctx->vo_chain->is_coverart &&
+ mpctx->video_status <= STATUS_READY)
+ return;
+
+ MP_VERBOSE(mpctx, "starting audio playback\n");
+ mpctx->audio_status = STATUS_PLAYING;
fill_audio_out_buffers(mpctx); // actually play prepared buffer
+ mp_wakeup_core(mpctx);
}
if (!mpctx->restart_complete) {