diff --git a/test/freqpeak.c b/test/freqpeak.c new file mode 100644 index 0000000..cd9e2ff --- /dev/null +++ b/test/freqpeak.c @@ -0,0 +1,87 @@ +#include +#include +#include +#include +#include +#include +#include "kiss_fft.h" + +#define NFFT 1024 +int main(int argc, char ** argv) +{ + int k; + void * st; + float fs=44100; + + short sampsin[2*NFFT]; + float lmag2[NFFT/2]; + float rmag2[NFFT/2]; + int peakr=0,peakl=0; + int removedc=1; + + kiss_fft_cpx cbuf[NFFT]; + int nbufs=0; + + st = kiss_fft_alloc(NFFT,0); + + memset( lmag2 , 0 , sizeof(lmag2) ); + memset( rmag2 , 0 , sizeof(rmag2) ); + + while ( fread( sampsin , sizeof(short) * 2*NFFT, 1 , stdin ) == 1 ) { + + //perform two ffts in parallel by packing the left&right channels into the real and imaginary + for (k=0;k