19 bool needsFFT()
const override {
return false; }
20 const char*
getName()
const override {
return "EnergyAnalyzer"; }
21 void reset()
override;
25 function_list<void(
float peak)>
onPeak;
float rms(fl::span< const int16_t > data)
float getNormalizedRMS() const
float getMaxEnergy() const
MovingAverage< float, 0 > mEnergyAvg
~EnergyAnalyzer() FL_NOEXCEPT override
bool needsFFT() const override
AttackDecayFilter< float > mRunningMaxFilter
static constexpr u32 PEAK_HOLD_MS
EnergyAnalyzer() FL_NOEXCEPT
function_list< void(float avgEnergy)> onAverageEnergy
function_list< void(float rms)> onEnergy
void updateAverage(float energy)
void fireCallbacks() override
function_list< void(float peak)> onPeak
void setHistorySize(int size)
const char * getName() const override
void updatePeak(float energy, u32 timestamp)
float getAverageEnergy() const
void setPeakDecay(float decay)
void update(shared_ptr< Context > context) override
function_list< void(float normalizedRms)> onNormalizedEnergy
float getMinEnergy() const
Base definition for an LED controller.