From b531332835c4c5ef0cf18e04ce28034ac643168d Mon Sep 17 00:00:00 2001 From: wm4 Date: Sat, 12 Aug 2017 23:33:58 +0200 Subject: [PATCH] player: fix another audio resync issue This oddly triggers bogus EOF when switching filter graphs between two audio files (in this case, "[vid1]f[vo];[aid2]f[ao]"->"[aid1]f[ao]", with aid2 being an external audio source). This commit also fixes desync when seeking with an external file connected via --lavfi-complex. (Yes, the audio resync code is cursed.) --- player/audio.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/player/audio.c b/player/audio.c index 7fef377dac..3fdd9ed28b 100644 --- a/player/audio.c +++ b/player/audio.c @@ -1039,7 +1039,7 @@ void fill_audio_out_buffers(struct MPContext *mpctx) status = filter_audio(mpctx, ao_c->ao_buffer, playsize); if (status == AD_WAIT) return; - if (status == AD_NO_PROGRESS) { + if (status == AD_NO_PROGRESS || status == AD_STARVE) { mp_wakeup_core(mpctx); return; }