I was thinking about some applications of using a FFT on the Daisy Seed, and I was curious if anyone knows about using an FFT for efficient audio storage. I think this is in the same realm of how MP3 compression works. With the example code I’m using from another Daisy forum thread, I think it would be possible to store the FFT data in QPSI and do the iFFT to play it back across power cycles.
I think you could use a 1024 size FFT to get about 125x compression, or instead of about 1.25 minutes of audio (extrapolating from the 10 minutes on 64MB SDRAM quoted on the ES website, but on 8 MB QPSI), you could store around 150 minutes of (lossy) audio using the FFT. The way I arrived at that figure is instead of the normal 48000 floating samples per second, you only need about 188 complex numbers per second, so 378 floating points for the real and imaginary terms to recreate 1 second of audio in the time domain.
Is this a thing that is done in commercial products such as samplers? Has anyone here tried something like it on the Daisy Seed? Thanks!
Edit: you know what, the 378 samples is for just one of the 512 bins of audio coming out of the FFT, so actually it’s MORE data than 48000 samples. I imagine MP3 implements some filtering of the mostly inaudible frequencies, and some other things.
Anyway, ignoring my bad math, my question still stands, has anyone tried using FFTs for audio compression on the Daisy seed?