I am currently looking around for a good allround beat detection library / source code in C++ since I found it really hard to achieve satisfying results with the beat detection code I wrote myself using this tutorial:
http://www.gamedev.net/reference/programming/features/beatdetection/
It's especially really hard if you want to make it work with any kind of music so I was wondering if there is something usable out there allready?
Thanks!
You could try Aubio: http://aubio.org/
It does not seem to work (at least for me, today) in windows, but it does work in OS/X
Look at the Vamp Plugin system and its available plugins ( http://vamp-plugins.org/ ).
(from the website)
Vamp is an audio processing plugin system for plugins that extract descriptive information from audio data
The QM Plugin set seems especially relevant ( http://vamp-plugins.org/plugin-doc/qm-vamp-plugins.html ).
Ah, Vamp. If only the interesting ones worked real-time.
user240137, I don't know if you're really all that into "accepting answers", but after looking into Vamp I found Aubio (aubio.org) and have found it easier to hack its functions into my projects to do real-time work (if that's what you're after).
Last: if you really want to handle your own FFT, use kissFFT as an easier alternative to FFTW.
OnsetsDS - real time musical onset detection C/C++ library http://onsetsds.sourceforge.net/
I may be missing something but I can't see why you can't use the GNU Scientific Library's FFT routine (or any other like those included in BOOST)?