fl::UISlider sensitivity("Sensitivity", 1.5f, 0.3f, 4.0f, 0.1f)
function_list< void(float hz)> onPitch
void setSampleRate(float rate)
void(*)(float pitch, float confidence) PitchConfidenceCallback
function_list< void(float hz)> onPitchChange
vector< float > mAutocorrelation
int findBestPeakLag(const fl::vector< float > &autocorr) const
float periodToFrequency(int period) const
void setPitchChangeSensitivity(float sensitivity)
float getConfidence() const
void(*)(u8 isVoiced) VoicedCallback
float calculateConfidence(const fl::vector< float > &autocorr, int peakLag) const
bool shouldReportPitchChange(float newPitch) const
float calculateAutocorrelation(const i16 *pcm, size numSamples)
void update(shared_ptr< Context > context) override
void(*)(float pitch) PitchCallback
void updatePitchSmoothing(float newPitch)
function_list< void(float hz, float confidence)> onPitchWithConfidence
void setSmoothingFactor(float factor)
void setMaxFrequency(float hz)
int frequencyToPeriod(float frequency) const
float mPitchChangeSensitivity
function_list< void(u8 voiced)> onVoiced
float mConfidenceThreshold
void setConfidenceThreshold(float threshold)
void setMinFrequency(float hz)
Pitch - Continuous pitch tracking using autocorrelation.
Base definition for an LED controller.