[SUGGESTION] FFT class


#1

Well, FFTs are largely used both in audio and in video applications, so it could be interesting to have a “generic” class implementation.

FFT @ SF.net


#2

So, you are volunteering to write the module? I am behind this 100%!


#3

Unfortunally I’m not a developer…

BTW I can try to involve someone other (3rd-party FFT software dev. of course) if you want !


#4

mmmh unfortunately this a is a developer forum.

how would a fft class made in juce benefit you directly ?


#5

This is fairly easy to do using the accelerate (vDSP) frameworks on Mac, as in this example:
http://www.rawmaterialsoftware.com/viewtopic.php?f=2&t=8297

On PC there is FFTW (but this is not free for commercial products if I remember correctly).

There is also a third party called FFTReal that might be suitable.

I have also thought it would be groovy to have a generic FFT class, and will likely grow my own one of these days if Jules doesn’t get there first.

Until then, it’s fairly easy to use the frameworks listed above and get them working with Juce.


#6

I actually did a cross platform FFT implementation using vDSP on Mac and FFTReal on Windows (and others). It’s in my module with some info here: and wiki here.

The Spectroscope and Sonogram classes use them internally so check those out for an example usage.


#7

nice work Dave!

I haven’t looked at the code yet, but am excited to check it out. I wouldn’t mind checking out the FFTReal code.

How much are you selling the commercial licenses for?

Also - is FFTReal is free to use, what about integrating some of this into the Juce libs? A generic FFT class gets requested alot!


#8

Yes, FFTReal is licensed under “WTFPL” which basically means you can do what you want with the code, no restrictions or requirements.

I haven’t got a set price for the comercial licence yet but if you (or anyone) is interested contact me and I’m sure we can sort something out.