Fast Fourier Transform (FFT) written in VB

Back in 2001, when I began working on DXVUMeter (an ActiveX control used to display audio in various formats) I wanted to implement the ability to display the monitored audio in the frequency domain, that is, be able to apply a Fast Fourier Transform over the sampled audio and display it.

[Again], I found a C and VB version of an FFT implementation done by no other than Murphy McCauley and if you look hard enough you can still find web sites hosting his original version.

The initial implementation of McCauley’s code worked well and did its job. Actually, DXVUMeterNETGDI, the latest version of this control, still uses a very similar version to do all its internal FFT calculations.

So what’s different in my (new) FFT implementation? Most importantly, the use of a new data type which allows all related FFT calculations to utilize complex numbers.
Also, my FFT module includes several additional functions such as:

So, if you are interested in using or simply peeking at this code, you can download the library from this link:
VB.NET FFT Library (11706 downloads )

If you have no idea what I’m talking about or what this code does, I recommend you read this article: http://www.relisoft.com/science/Physics/sound.html