aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVolker RĂ¼melin <vr_qemu@t-online.de>2022-03-01 20:13:02 +0100
committerGerd Hoffmann <kraxel@redhat.com>2022-03-04 11:05:13 +0100
commit369829a435ad87d2ac8ae79e6dc61e8c76d6890b (patch)
treedae76e6a558b4840e89820b11ffa72003b489d54
parent30ff5e24a31e818f2ae41861727866a35bfdbe23 (diff)
downloadqemu-369829a435ad87d2ac8ae79e6dc61e8c76d6890b.zip
qemu-369829a435ad87d2ac8ae79e6dc61e8c76d6890b.tar.gz
qemu-369829a435ad87d2ac8ae79e6dc61e8c76d6890b.tar.bz2
jackaudio: use more jack audio buffers
The next patch reduces the effective qemu playback buffer size by timer-period. Increase the number of jack audio buffers by one to preserve the total effective buffer size. The size of one jack audio buffer is 512 samples. With audio defaults that's 512 samples / 44100 samples/s = 11.6 ms and only slightly larger than the timer-period of 10 ms. The larger jack audio buffer increases audio dropout safety, because the high priority jack-audio worker threads can provide audio data for a longer period of time as with a smaller buffer and more audio data in the mixing engine buffer that they can't access. Signed-off-by: Volker RĂ¼melin <vr_qemu@t-online.de> Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com> Message-Id: <20220301191311.26695-6-vr_qemu@t-online.de> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-rw-r--r--audio/jackaudio.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/audio/jackaudio.c b/audio/jackaudio.c
index 317009e..26246c3 100644
--- a/audio/jackaudio.c
+++ b/audio/jackaudio.c
@@ -483,8 +483,8 @@ static int qjack_client_init(QJackClient *c)
c->buffersize = 512;
}
- /* create a 2 period buffer */
- qjack_buffer_create(&c->fifo, c->nchannels, c->buffersize * 2);
+ /* create a 3 period buffer */
+ qjack_buffer_create(&c->fifo, c->nchannels, c->buffersize * 3);
qjack_client_connect_ports(c);
c->state = QJACK_STATE_RUNNING;