adamstark@60:
adamstark@60:
adamstark@60:
22 #ifndef __ONSETDETECTIONFUNCTION_H
adamstark@60:
23 #define __ONSETDETECTIONFUNCTION_H
adamstark@60:
adamstark@60:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
35 SpectralDifferenceHWR,
adamstark@65:
adamstark@65:
37 ComplexSpectralDifference,
adamstark@65:
38 ComplexSpectralDifferenceHWR,
adamstark@65:
adamstark@65:
40 HighFrequencySpectralDifference,
adamstark@65:
41 HighFrequencySpectralDifferenceHWR
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
78 void initialise(
int hopSize_,
int frameSize_,
int onsetDetectionFunctionType_,
int windowType);
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
98 double energyEnvelope();
adamstark@65:
adamstark@65:
101 double energyDifference();
adamstark@65:
adamstark@65:
104 double spectralDifference();
adamstark@65:
adamstark@65:
107 double spectralDifferenceHWR();
adamstark@65:
adamstark@65:
110 double phaseDeviation();
adamstark@65:
adamstark@65:
113 double complexSpectralDifference();
adamstark@65:
adamstark@65:
116 double complexSpectralDifferenceHWR();
adamstark@65:
adamstark@65:
119 double highFrequencyContent();
adamstark@65:
adamstark@65:
122 double highFrequencySpectralDifference();
adamstark@65:
adamstark@65:
125 double highFrequencySpectralDifferenceHWR();
adamstark@65:
adamstark@65:
adamstark@65:
129 void calculateRectangularWindow();
adamstark@65:
adamstark@65:
132 void calculateHanningWindow();
adamstark@65:
adamstark@65:
135 void calclulateHammingWindow();
adamstark@65:
adamstark@65:
138 void calculateBlackmanWindow();
adamstark@65:
adamstark@65:
141 void calculateTukeyWindow();
adamstark@65:
adamstark@65:
adamstark@65:
148 double princarg(
double phaseVal);
adamstark@61:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
adamstark@65:
155 int onsetDetectionFunctionType;
adamstark@65:
adamstark@65:
158 fftw_complex *complexIn;
adamstark@65:
159 fftw_complex *complexOut;
adamstark@65:
adamstark@65:
163 std::vector<double> frame;
adamstark@65:
164 std::vector<double> window;
adamstark@65:
166 double prevEnergySum;
adamstark@65:
168 std::vector<double> magSpec;
adamstark@65:
169 std::vector<double> prevMagSpec;
adamstark@65:
171 std::vector<double> phase;
adamstark@65:
172 std::vector<double> prevPhase;
adamstark@65:
173 std::vector<double> prevPhase2;
adamstark@65:
adamstark@61:
adamstark@65:
adamstark@65:
adamstark@60: