diff --git a/player/audio.c b/player/audio.c index cfad9e8195..48b14b735d 100644 --- a/player/audio.c +++ b/player/audio.c @@ -609,7 +609,7 @@ void fill_audio_out_buffers(struct MPContext *mpctx, double endpts) mp_audio_buffer_skip(mpctx->ao_buffer, played); mpctx->audio_status = STATUS_PLAYING; - if (audio_eof && !mpctx->paused) { + if (audio_eof && !mp_audio_buffer_samples(mpctx->ao_buffer)) { mpctx->audio_status = STATUS_DRAINING; // Wait until the AO has played all queued data. In the gapless case, // we trigger EOF immediately, and let it play asynchronously.