FastLED 3.9.15
Loading...
Searching...
No Matches

◆ detectBeats()

void fl::audio::BeatDetectors::detectBeats ( span< const float, 16 > frequencyBins,
Data & audioData )

Definition at line 882 of file audio_reactive.cpp.hpp.

882 {
883 // Calculate current band energies
884 mBassEnergy = (frequencyBins[0] + frequencyBins[1]) / 2.0f;
885 mMidEnergy = (frequencyBins[6] + frequencyBins[7]) / 2.0f;
886 mTrebleEnergy = (frequencyBins[14] + frequencyBins[15]) / 2.0f;
887
888 // Simple threshold-based detection using per-band energy deltas.
889 audioData.bassBeatDetected = (mBassEnergy > mPreviousBassEnergy * 1.3f) && (mBassEnergy > 0.1f);
890 audioData.midBeatDetected = (mMidEnergy > mPreviousMidEnergy * 1.25f) && (mMidEnergy > 0.08f);
891 audioData.trebleBeatDetected = (mTrebleEnergy > mPreviousTrebleEnergy * 1.2f) && (mTrebleEnergy > 0.05f);
892
893 // Update previous energies
897}

References fl::audio::Data::bassBeatDetected, mBassEnergy, fl::audio::Data::midBeatDetected, mMidEnergy, mPreviousBassEnergy, mPreviousMidEnergy, mPreviousTrebleEnergy, mTrebleEnergy, and fl::audio::Data::trebleBeatDetected.

Referenced by ~BeatDetectors().

+ Here is the caller graph for this function: