From 8f41031933663526eb74d2c0e09601a731c42bad Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Mon, 25 Jun 2018 17:07:59 +0200 Subject: [PATCH] alsa: clamp threshold to configured max --- spa/plugins/alsa/alsa-sink.c | 3 ++- spa/plugins/alsa/alsa-source.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/spa/plugins/alsa/alsa-sink.c b/spa/plugins/alsa/alsa-sink.c index 4b1f6c3ad..7918304c1 100644 --- a/spa/plugins/alsa/alsa-sink.c +++ b/spa/plugins/alsa/alsa-sink.c @@ -503,7 +503,8 @@ impl_node_port_use_buffers(struct spa_node *node, spa_log_error(this->log, NAME " %p: need mapped memory", this); return -EINVAL; } - this->threshold = d[0].maxsize / this->frame_size; + this->threshold = SPA_MIN(d[0].maxsize / this->frame_size, + this->props.max_latency); } this->n_buffers = n_buffers; diff --git a/spa/plugins/alsa/alsa-source.c b/spa/plugins/alsa/alsa-source.c index 15c51abbe..0e948d7b3 100644 --- a/spa/plugins/alsa/alsa-source.c +++ b/spa/plugins/alsa/alsa-source.c @@ -525,7 +525,8 @@ impl_node_port_use_buffers(struct spa_node *node, } spa_list_append(&this->free, &b->link); - this->threshold = d[0].maxsize / this->frame_size; + this->threshold = SPA_MIN(d[0].maxsize / this->frame_size, + this->props.max_latency); } this->n_buffers = n_buffers;