A VU meter that reads from an Audio stream using the AudioAnalyzePeak class, and displays it on an LED bar graph. More...
#include <Audio/AudioVULEDs.hpp>
Public Member Functions | |
AudioVULEDs (const AH::DotBarDisplayLEDs< N > &vuleds, AudioAnalyzePeak &level, float gain=1.0) | |
Create a new AudioVULEDs object. More... | |
void | begin () override |
Initialize. More... | |
void | update () override |
Update the LEDs with the latest level. More... | |
void | setMode (AH::DotBarMode mode) |
Set the mode to either dot or bar mode. More... | |
void | dotMode () |
Set the mode to dot mode. More... | |
void | barMode () |
Set the mode to bar mode. More... | |
uint8_t | getValue () override |
Get the value of the VU meter. More... | |
float | getFloatValue () override |
Get the value of the VU meter. More... | |
bool | getOverload () override |
void | setGain (float gain) |
Set the gain for the VU meter. More... | |
uint8_t | getMax () const |
Get the maximum value that this VU meter can return. More... | |
void | enable () |
Enable this updatable: insert it into the linked list of instances, so it gets updated automatically. More... | |
void | disable () |
Disable this updatable: remove it from the linked list of instances, so it no longer gets updated automatically. More... | |
bool | isEnabled () |
Check if this updatable is enabled. More... | |
Static Public Member Functions | |
static void | enable (Updatable *element) |
static void | enable (Updatable &element) |
static void | enable (U(&array)[N]) |
static void | disable (Updatable< AudioVU > *element) |
static void | disable (Updatable< AudioVU > &element) |
static void | disable (U(&array)[N]) |
static void | beginAll () |
Begin all enabled instances of this class. More... | |
static void | updateAll () |
Update all enabled instances of this class. More... | |
Protected Attributes | |
const uint8_t | max |
Updatable< AudioVU > * | next |
Updatable< AudioVU > * | previous |
Private Attributes | |
AH::DotBarDisplayLEDs< N > | vuleds |
uint8_t | previousValue = 0 |
MovingCoilBallistics | ballistics = MovingCoilBallistics::responsiveVU() |
class AudioVU::Analyzer | level |
float | gain |
Static Private Attributes | |
static DoublyLinkedList< Updatable< AudioVU > > | updatables |
A VU meter that reads from an Audio stream using the AudioAnalyzePeak class, and displays it on an LED bar graph.
N | The number of LEDs. |
Definition at line 21 of file AudioVULEDs.hpp.
|
inline |
Create a new AudioVULEDs object.
vuleds | The LEDs to display the VU meter to. |
level | The Teensy Audio peak analyzer object. Note that it is kept by reference, so it must outlive the AudioVU instance. |
gain | A multiplier to calibrate the VU meter. |
Definition at line 35 of file AudioVULEDs.hpp.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Update the LEDs with the latest level.
Implements Updatable< AudioVU >.
Definition at line 47 of file AudioVULEDs.hpp.
|
inline |
Set the mode to either dot or bar mode.
mode | The mode. |
Definition at line 61 of file AudioVULEDs.hpp.
|
inline |
Set the mode to dot mode.
Definition at line 66 of file AudioVULEDs.hpp.
|
inline |
Set the mode to bar mode.
Definition at line 71 of file AudioVULEDs.hpp.
|
inlineoverridevirtualinherited |
Get the value of the VU meter.
Implements IVU.
Definition at line 60 of file AudioVU.hpp.
|
inlineoverridevirtualinherited |
Get the value of the VU meter.
Reimplemented from IVU.
Definition at line 70 of file AudioVU.hpp.
|
inlineoverridevirtualinherited |
Implements IVU.
Definition at line 83 of file AudioVU.hpp.
|
inlineinherited |
Set the gain for the VU meter.
gain | The new gain. |
Definition at line 90 of file AudioVU.hpp.
|
inlineinherited |
|
inlineinherited |
Enable this updatable: insert it into the linked list of instances, so it gets updated automatically.
Definition at line 45 of file Updatable.hpp.
Definition at line 85 of file Updatable.hpp.
Definition at line 87 of file Updatable.hpp.
|
inlinestaticinherited |
Definition at line 90 of file Updatable.hpp.
|
inlineinherited |
Disable this updatable: remove it from the linked list of instances, so it no longer gets updated automatically.
Definition at line 55 of file Updatable.hpp.
Definition at line 95 of file Updatable.hpp.
Definition at line 97 of file Updatable.hpp.
|
inlinestaticinherited |
Definition at line 100 of file Updatable.hpp.
|
inlineinherited |
Check if this updatable is enabled.
Definition at line 69 of file Updatable.hpp.
|
inlinestaticinherited |
Begin all enabled instances of this class.
Definition at line 73 of file Updatable.hpp.
|
inlinestaticinherited |
Update all enabled instances of this class.
Definition at line 80 of file Updatable.hpp.
|
private |
Definition at line 74 of file AudioVULEDs.hpp.
|
private |
Definition at line 75 of file AudioVULEDs.hpp.
|
privateinherited |
Definition at line 93 of file AudioVU.hpp.
|
privateinherited |
|
privateinherited |
Definition at line 134 of file AudioVU.hpp.
|
staticprivateinherited |
Definition at line 106 of file Updatable.hpp.
Definition at line 305 of file LinkedList.hpp.
Definition at line 306 of file LinkedList.hpp.