comparison SimpleCepstrum.h @ 24:0a3c1ecff644

Add rather simplistic cubic interpolation for peak values in a cepstrum output (not yet for pitch tracker). Only gains us 1dp
author Chris Cannam
date Thu, 05 Jul 2012 20:50:56 +0100
parents 7786d595d2f2
children fb862b3418f3
comparison
equal deleted inserted replaced
23:1ae8041ae31b 24:0a3c1ecff644
81 }; 81 };
82 82
83 Method m_method; 83 Method m_method;
84 84
85 mutable int m_pkOutput; 85 mutable int m_pkOutput;
86 mutable int m_ipkOutput;
86 mutable int m_varOutput; 87 mutable int m_varOutput;
87 mutable int m_p2rOutput; 88 mutable int m_p2rOutput;
88 mutable int m_cepOutput; 89 mutable int m_cepOutput;
89 mutable int m_pvOutput; 90 mutable int m_pvOutput;
90 mutable int m_amOutput; 91 mutable int m_amOutput;
99 int m_bins; // count of "interesting" bins, those returned in m_cepOutput 100 int m_bins; // count of "interesting" bins, those returned in m_cepOutput
100 101
101 double **m_history; 102 double **m_history;
102 103
103 void filter(const double *in, double *out); 104 void filter(const double *in, double *out);
105 double cubicInterpolate(const double[4], double);
106 double findInterpolatedPeak(const double *in, int maxbin);
104 void fft(unsigned int n, bool inverse, 107 void fft(unsigned int n, bool inverse,
105 double *ri, double *ii, double *ro, double *io); 108 double *ri, double *ii, double *ro, double *io);
106 109
107 void addStatisticalOutputs(FeatureSet &fs, const double *data); 110 void addStatisticalOutputs(FeatureSet &fs, const double *data);
108 void addEnvelopeOutputs(FeatureSet &fs, const float *const *inputBuffers, 111 void addEnvelopeOutputs(FeatureSet &fs, const float *const *inputBuffers,