I wouldn't be surprised if there is such a library, but I haven't used. Here's a 16-bit, fixed-point FFT / IFFT written in standard 'C' so it's easily adaptable to Arduino:
I've used it on an Adafruit Feather M0. But, I can't speak to its suitability for a low-RAM, 8-bit AVR processor.
gfvalvo:
I wouldn't be surprised if there is such a library, but I haven't used. Here's a 16-bit, fixed-point FFT / IFFT written in standard 'C' so it's easily adaptable to Arduino: fix_fft.c · GitHub
I've used it on an Adafruit Feather M0. But, I can't speak to its suitability for a low-RAM, 8-bit AVR processor.
We tried to use FFT's on several Arduino µC's, but couldn't get the speed we needed. We switched to the Teensy 3.6 and their audio board using the audio library which does include FFT's. The PJRC Teensy 3.6 scoots along at 180MHz, has 1Mb of flash and 256K of SRAM and was up to the task. PJRC has a patch (i.e., Teensyduino) for the Arduino IDE so you can still do everything in the Arduino IDE.
econjack:
We tried to use FFT's on several Arduino µC's, but couldn't get the speed we needed. We switched to the Teensy 3.6 and their audio board using the audio library which does include FFT's. The PJRC Teensy 3.6 scoots along at 180MHz, has 1Mb of flash and 256K of SRAM and was up to the task. PJRC has a patch (i.e., Teensyduino) for the Arduino IDE so you can still do everything in the Arduino IDE.