diff options
| -rw-r--r-- | src/audio/fft.cc | 2 | ||||
| -rw-r--r-- | src/audio/fft.h | 3 | ||||
| -rw-r--r-- | src/tests/audio/test_fft.cc | 27 |
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(); |
