summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/audio/fft.cc2
-rw-r--r--src/audio/fft.h3
-rw-r--r--src/tests/audio/test_fft.cc27
3 files changed, 1 insertions, 31 deletions
diff --git a/src/audio/fft.cc b/src/audio/fft.cc
index 6512fdc..7523b42 100644
--- a/src/audio/fft.cc
+++ b/src/audio/fft.cc
@@ -9,7 +9,7 @@
// Bit-reversal permutation (in-place)
// Reorders array elements by reversing their binary indices
-void bit_reverse_permute(float* real, float* imag, size_t N) {
+static void bit_reverse_permute(float* real, float* imag, size_t N) {
size_t temp_bits = N;
size_t num_bits = 0;
while (temp_bits > 1) {
diff --git a/src/audio/fft.h b/src/audio/fft.h
index 6a54742..df37ad5 100644
--- a/src/audio/fft.h
+++ b/src/audio/fft.h
@@ -8,9 +8,6 @@
#include <cstddef>
-// Bit-reversal permutation (in-place). Exposed for testing.
-void bit_reverse_permute(float* real, float* imag, size_t N);
-
// Forward FFT: Time domain → Frequency domain
// Input: real[] (length N), imag[] (length N, can be zeros)
// Output: real[] and imag[] contain complex frequency bins
diff --git a/src/tests/audio/test_fft.cc b/src/tests/audio/test_fft.cc
index e15efb4..2d47aa0 100644
--- a/src/tests/audio/test_fft.cc
+++ b/src/tests/audio/test_fft.cc
@@ -66,32 +66,6 @@ static bool arrays_match(const float* a, const float* b, size_t N,
return true;
}
-// Test A: bit_reverse_permute — exact index mapping for N=8
-// Standard 3-bit bit-reversal: [0,1,2,3,4,5,6,7] → [0,4,2,6,1,5,3,7]
-static void test_a_bit_reverse_permute() {
- printf("Test A: bit_reverse_permute (N=8 exact mapping)...\n");
-
- const size_t N = 8;
- float real_arr[N];
- float imag_arr[N];
-
- for (size_t i = 0; i < N; i++) {
- real_arr[i] = (float)i;
- imag_arr[i] = 0.0f;
- }
-
- bit_reverse_permute(real_arr, imag_arr, N);
-
- const float expected[N] = {0.0f, 4.0f, 2.0f, 6.0f, 1.0f, 5.0f, 3.0f, 7.0f};
- for (size_t i = 0; i < N; i++) {
- assert(real_arr[i] == expected[i]);
- assert(imag_arr[i] == 0.0f);
- }
-
- printf(" ✓ [0,1,...,7] → [0,4,2,6,1,5,3,7] (exact)\n");
- printf("Test A: PASSED ✓\n\n");
-}
-
// Test B: fft_forward small N=4 — all 4 unit impulses vs direct DFT
static void test_b_fft_radix2_small_n() {
printf("Test B: fft_forward N=4 (unit impulses vs direct DFT, tol=1e-5)...\n");
@@ -385,7 +359,6 @@ int main() {
printf("FFT-based DCT/IDCT Test Suite\n");
printf("===========================================\n\n");
- test_a_bit_reverse_permute();
test_b_fft_radix2_small_n();
test_c_twiddle_accumulation();
test_d_dct_small_n();