MCPcopy Create free account
hub / github.com/FastLED/FastLED / calculateSpectralCentroid

Method calculateSpectralCentroid

src/fl/audio/detector/mood_analyzer.cpp.hpp:113–124  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

111}
112
113float MoodAnalyzer::calculateSpectralCentroid(const fft::Bins& fft) {
114 float weightedSum = 0.0f;
115 float magnitudeSum = 0.0f;
116
117 for (size_t i = 0; i < fft.raw().size(); i++) {
118 float magnitude = fft.raw()[i];
119 weightedSum += i * magnitude;
120 magnitudeSum += magnitude;
121 }
122
123 return (magnitudeSum < 1e-6f) ? 0.0f : weightedSum / magnitudeSum;
124}
125
126float MoodAnalyzer::calculateSpectralRolloff(const fft::Bins& fft, float threshold) {
127 float totalEnergy = 0.0f;

Callers

nothing calls this directly

Calls 2

sizeMethod · 0.45
rawMethod · 0.45

Tested by

no test coverage detected