From 7b355d5628bbbf9f86589b99ea29da1842d0ab66 Mon Sep 17 00:00:00 2001 From: Dmitry Sharshakov Date: Sun, 15 Jan 2023 14:51:32 +0300 Subject: [PATCH] convolver: add gain when resampling to preserve volume --- src/modules/module-filter-chain/builtin_plugin.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/modules/module-filter-chain/builtin_plugin.c b/src/modules/module-filter-chain/builtin_plugin.c index 45867b36d..7d88111d9 100644 --- a/src/modules/module-filter-chain/builtin_plugin.c +++ b/src/modules/module-filter-chain/builtin_plugin.c @@ -597,6 +597,11 @@ static float *resample_buffer(float *samples, int *n_samples, resample_free(&r); *n_samples = total_out; + + float gain = (float)in_rate / (float)out_rate; + for (uint32_t i = 0; i < total_out; i++) + out_samples[i] = out_samples[i] * gain; + return out_samples; error: