From 668df44e511c1dd1c73e8d5c4d9b1d1c18d2c1a4 Mon Sep 17 00:00:00 2001 From: KubaPro010 Date: Thu, 27 Mar 2025 21:42:01 +0100 Subject: [PATCH] what's chatgpt on --- src/fm95.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/fm95.c b/src/fm95.c index 4d03abf..6a404f7 100644 --- a/src/fm95.c +++ b/src/fm95.c @@ -46,16 +46,20 @@ static volatile sig_atomic_t to_run = 1; +#include + void uninterleave(const float *input, float *left, float *right, size_t num_samples) { #if USE_NEON + size_t num_frames = num_samples / 2; size_t i = 0; - for (; i + 4 <= num_samples; i += 4) { - float32x4x2_t interleaved = vld2q_f32(input + i * 2); + + for (; i + 4 <= num_frames; i += 4) { + float32x4x2_t interleaved = vld2q_f32(input + i * 2 * 2); vst1q_f32(left + i, interleaved.val[0]); vst1q_f32(right + i, interleaved.val[1]); } - for (; i < num_samples / 2; i++) { + for (; i < num_frames; i++) { left[i] = input[i * 2]; right[i] = input[i * 2 + 1]; }