As you may or may not know I am working on a gateway tool for citizen band radio. For this tool I was asked if it would be possible to build a tone detection, maybe more, into my software. And on the way of finding out how to accomplish this I stumbles across several very interesting things.
Like this peakmeter control which uses a software digital signal processing or a software dsp library – everything written entirely in managed code (C#) and both open source. Both examples show that you can use digital signal processing for audio and image content… and for more.
The peakmeter control:
“DSP processing is very interesting subject to learn and work with. This block receives digital samples from the source. It approximates the original waveform and finds its peak magnitudes.
Since I would not be able to go in details about how FFT (Fast Fourier Transform) works in this article, I recommend the interested reader to visit some of the links in the reference section to increase his/her knowledge about this process.”
The software DSP library:
“A C# open source library that provides fully featured (1) single and double precision complex number data types, (2) complex number math library, (3) 1D, 2D and 3D complex and real symmetric fast Fourier transforms, and (4) highly accurate statistical routines. The library is optimized for both speed and numerical accuracy. The reason that this library is called a “Digital Signal Processing” library is because complex numbers, FFTs and statistical functions form the basis of any DSP library — although it is the hope that this library will continue to evolve to a more full fledged DSP library.”