0
1
mirror of https://github.com/radio95-rnt/fm95.git synced 2026-02-26 19:23:51 +01:00
This commit is contained in:
2025-03-27 21:45:49 +01:00
parent 9018390492
commit 73c4569909

View File

@@ -47,27 +47,10 @@
static volatile sig_atomic_t to_run = 1;
void uninterleave(const float *input, float *left, float *right, size_t num_samples) {
#if USE_NEON
size_t i = 0;
size_t vectorized_count = num_samples & ~3;
for (; i < vectorized_count; i += 4) {
float32x4x2_t interleaved = vld2q_f32(input + i * 2);
vst1q_f32(left + i, interleaved.val[0]);
vst1q_f32(right + i, interleaved.val[1]);
}
for (; i < num_samples / 2; i++) {
left[i] = input[i * 2];
right[i] = input[i * 2 + 1];
}
#else
for (size_t i = 0; i < num_samples / 2; i++) {
left[i] = input[i * 2];
right[i] = input[i * 2 + 1];
}
#endif
}
static void stop(int signum) {