From 4e85e81d9b440cc3f7bbebfc1a6f105c4e4740e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6kmen=20G=C3=B6rgen?= Date: Mon, 19 Jan 2026 15:12:37 +0100 Subject: [PATCH] Update src/pipecat/audio/filters/aic_filter.py Co-authored-by: Tobias <76444201+Fl1tzi@users.noreply.github.com> --- src/pipecat/audio/filters/aic_filter.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/pipecat/audio/filters/aic_filter.py b/src/pipecat/audio/filters/aic_filter.py index d4de454b2..14b95c92d 100644 --- a/src/pipecat/audio/filters/aic_filter.py +++ b/src/pipecat/audio/filters/aic_filter.py @@ -272,7 +272,12 @@ class AICFilter(BaseAudioFilter): out_f32 = await self._processor.process_async(block_f32) # Convert back to int16 bytes - out_i16 = np.clip(out_f32 * 32768.0, -32768, 32767).astype(np.int16) + # Denormalize and convert back to int16 + out_f32 *= 32768.0 + + # In-place clip to valid int16 range (-32768 to 32767) + np.clip(out_f32, -32768.0, 32767, out=out_f32) + out_i16 = out_f32.astype(dtype) filtered_chunks.append(out_i16.reshape(-1).tobytes()) # Slide buffer