FastLED 3.10.6
Loading...
Searching...
No Matches
room_sense.h File Reference
#include "FastLED.h"
#include "fl/audio/audio_processor.h"
#include "fl/stl/shared_ptr.h"
#include "fl/stl/stdint.h"
+ Include dependency graph for room_sense.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  mood_ring::Follower
 Smoothed one-pole follower with independent attack and release. More...
 
struct  mood_ring::ListenerTuning
 Everything the UI is allowed to tune on the listening side. More...
 
struct  mood_ring::RoomEvents
 One-frame rising edges. Set on the frame the event lands, cleared next. More...
 
class  mood_ring::RoomListener
 
struct  mood_ring::RoomSense
 Everything a visual is allowed to react to. More...
 

Namespaces

namespace  mood_ring
 

Class Documentation

◆ mood_ring::ListenerTuning

struct mood_ring::ListenerTuning
Class Members
float grooveAttackMs = 800.0f how slowly we start trusting a beat
float grooveEnter = 0.60f confidence where groove is fully on
float grooveExit = 0.35f confidence where groove is fully off
float grooveReleaseMs = 1500.0f how slowly we stop trusting it
float presenceAttackMs = 150.0f how fast sound wakes the ring
float presenceReleaseMs = 900.0f how slowly silence settles in
float punchGain = 1.5f scales the bass transient

◆ mood_ring::RoomEvents

struct mood_ring::RoomEvents
Class Members
bool beat = false
bool downbeat = false
bool hihat = false
bool kick = false
bool snare = false

◆ mood_ring::RoomSense

struct mood_ring::RoomSense
+ Collaboration diagram for mood_ring::RoomSense:
Class Members
float arousal = 0.0f 0 calm .. 1 energetic
float beatPhase = 0.0f 0 on the beat, ramps to 1 before the next
float bpm = 0.0f
float calm = 1.0f
float energy = 0.0f smoothed loudness
RoomEvents events
float flow = 0.0f
float groove = 0.0f
float grooveConfidence = 0.0f
float high = 0.0f
float low = 0.0f
float measurePhase = 0.0f 0 on the downbeat
float mid = 0.0f
float presence = 0.0f sound is present (silence -> 0)
float punch = 0.0f bass transient (a hit, not loudness)
float shimmer = 0.0f treble transient
float trend = 0.0f [-1, 1] falling .. rising
float warmth = 0.5f 0 cool .. 1 warm, from valence