00001 #ifndef AUDIOMASKER_H_
00002 #define AUDIOMASKER_H_
00003
00004 #include "AudioMask.H"
00005 #include "depukfb.H"
00006 #include <mffm/realFFT.H>
00007 #include <stdlib.h>
00008
00009 #define DEFAULT_FBCOUNT 100
00010 #define DEFAULT_SAMPLECOUNT 512
00011 #define DEFAULT_SAMPLEFREQ 44100
00012
00013
00014
00015
00016
00052 class AudioMasker : public AudioMask {
00053 double **output;
00054 double **powOutput;
00055 double *input;
00056 int sampleCount;
00057 int bankCount;
00058
00059 realFFTData *fftData;
00060 realFFT *fft;
00061
00062 void FBDeMalloc(void);
00063
00064 void FBMalloc(void);
00065
00066 void process(void);
00067 public:
00068 DepUKFB *pfb;
00069
00070
00076 AudioMasker(int sampFreq, int fBankCount);
00077 AudioMasker(void);
00078 ~AudioMasker(void);
00079
00080
00086 void excite(short int *Input, int sCount);
00092 void excite(double *Input, int sCount);
00093
00098 double findThreshold(double freq);
00099 };
00100 #endif //AUDIOMASKER_H_
00101