From c10feda5ce67c5cf340fbbe9359a81f83c557927 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Tue, 15 Sep 2020 13:11:31 +0200 Subject: [PATCH] merger: follow the position duration if we can --- spa/plugins/audioconvert/merger.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/spa/plugins/audioconvert/merger.c b/spa/plugins/audioconvert/merger.c index 641d3d5bd..482f908ce 100644 --- a/spa/plugins/audioconvert/merger.c +++ b/spa/plugins/audioconvert/merger.c @@ -977,7 +977,11 @@ static int impl_node_process(void *object) dd = &dbuf->buf->datas[0]; maxsize = dd->maxsize; - n_samples = maxsize / outport->stride; + + if (SPA_LIKELY(this->io_position)) + n_samples = this->io_position->clock.duration; + else + n_samples = maxsize / outport->stride; src_datas = alloca(sizeof(void*) * this->port_count);