From e8c2e283f0954de255a32ea70d577d5e61992399 Mon Sep 17 00:00:00 2001 From: Qi Zhou <atm...@outlook.com> Date: Thu, 10 Sep 2020 19:09:29 +0800 Subject: [PATCH] Fix video playback slowdown when spice client no audio enabled
You will get video playback slowdown on the following cases 1. use official spice client with audio channel disabled, use --spice-disable-audio option 2. thirtpart client doesn't implement audio channel ref: https://github.com/qemu/qemu/commit/fb35c2cec58985f0b8d2733f1b91927542eeb3fd Signed-off-by: Qi Zhou <atm...@outlook.com> --- audio/audio.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/audio/audio.c b/audio/audio.c index ce8c6dec5f..50febe190f 100644 --- a/audio/audio.c +++ b/audio/audio.c @@ -1091,7 +1091,11 @@ static size_t audio_pcm_hw_run_out(HWVoiceOut *hw, size_t live) while (live) { size_t size, decr, proc; void *buf = hw->pcm_ops->get_buffer_out(hw, &size); - if (!buf || size == 0) { + + if (!buf) { + hw->mix_buf->pos = (hw->mix_buf->pos + live) % hw->mix_buf->size; + return clipped + live; + } else if ( size == 0) { break; } -- 2.17.1