RSeries astromech firmware
WarblerAudio Class Reference

#include <audio/Warbler.h>

+ Inheritance diagram for WarblerAudio:
+ Collaboration diagram for WarblerAudio:

Public Member Functions

 WarblerAudio (fs::FS &fs, AudioFrequencyBitmap *audioBitmap=nullptr, uint8_t bclk=I2S_BCLK_PIN, uint8_t lrc=I2S_LRC_PIN, uint8_t dout=I2S_DOUT_PIN)
 
void setBalance (int8_t bal=0)
 
void setVolume (uint8_t vol)
 
bool isComplete () const
 
void stop ()
 
virtual void setup () override
 Subclasses must implement this function to perform any necessary setup that cannot happen in the constructor. More...
 
virtual void animate () override
 Subclasses must implement this function to run through a single frame of animation/activity. More...
 
bool isPlaying ()
 
void play (const char *file)
 
void playNext (int track=-1, int32_t warble=-1)
 
void queue (uint32_t delayMS=0, int track=-1, int32_t warble=-1)
 
int16_t read ()
 
virtual void audio_eof_mp3 (const char *info) override
 
- Public Member Functions inherited from AnimatedEvent
 AnimatedEvent ()
 Default Constructor. More...
 
void setLoopDoneCallback (AnimatedLoopDone loopProc)
 
- Public Member Functions inherited from SetupEvent
 SetupEvent ()
 Default Constructor. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from AnimatedEvent
static void process ()
 Calls animate() for each created AnimatedEvent subclass. More...
 
- Static Public Member Functions inherited from SetupEvent
static void ready ()
 Calls setup() for each created AnimatedEvent subclass. More...
 
- Protected Member Functions inherited from AudioPlayer
 AudioPlayer ()
 
 ~AudioPlayer ()
 
bool connecttoFS (fs::FS &fs, const char *file)
 
bool connecttoSD (const char *sdfile)
 
bool setFileLoop (bool input)
 
bool connecttohost (const char *host, const char *user="", const char *pwd="")
 
bool connecttospeech (const char *speech, const char *lang)
 
bool connecttonull ()
 
void loop ()
 
uint32_t getFileSize ()
 
uint32_t getFilePos ()
 
uint32_t getSampleRate ()
 
uint8_t getBitsPerSample ()
 
uint8_t getChannels ()
 
uint32_t getAudioFileDuration ()
 Get the audio file duration in seconds. More...
 
uint32_t getAudioCurrentTime ()
 Get the current plying time in seconds. More...
 
bool setFilePos (uint32_t pos)
 
bool audioFileSeek (const int8_t speed)
 audioFileSeek seeks the file in both directions More...
 
bool setPinout (uint8_t BCLK, uint8_t LRC, uint8_t DOUT, int8_t DIN=I2S_PIN_NO_CHANGE)
 
void stopSong ()
 
bool pauseResume ()
 pauseResume pauses current playback More...
 
void forceMono (bool m)
 
void setBalance (int8_t bal=0)
 
void setVolume (uint8_t vol)
 
uint8_t getVolume ()
 
uint8_t getDatamode ()
 
void setDatamode (uint8_t dm)
 
uint32_t streamavail ()
 
bool isRunning ()
 
bool isNullStream ()
 
bool isLocalFile ()
 
bool isWebStream ()
 
esp_err_t i2s_mclk_pin_select (const uint8_t pin)
 
uint32_t inBufferFilled ()
 
uint32_t inBufferFree ()
 
void setTone (uint8_t l_type=0, uint16_t l_freq=0, uint8_t r_type=0, uint16_t r_freq=0)
 
void setInternalDAC (bool internalDAC)
 
void setI2SCommFMT_LSB (bool commFMT)
 
void setSampleFilter (AudioSampleFilter filter)
 

Constructor & Destructor Documentation

◆ WarblerAudio()

WarblerAudio::WarblerAudio ( fs::FS &  fs,
AudioFrequencyBitmap audioBitmap = nullptr,
uint8_t  bclk = I2S_BCLK_PIN,
uint8_t  lrc = I2S_LRC_PIN,
uint8_t  dout = I2S_DOUT_PIN 
)
inline

Member Function Documentation

◆ animate()

virtual void WarblerAudio::animate ( )
inlineoverridevirtual

Subclasses must implement this function to run through a single frame of animation/activity.

Subclasses should not call delay() or otherwise block.

Implements AnimatedEvent.

◆ audio_eof_mp3()

virtual void WarblerAudio::audio_eof_mp3 ( const char *  info)
inlineoverridevirtual

Reimplemented from AudioPlayer.

◆ isComplete()

bool WarblerAudio::isComplete ( ) const
inline

◆ isPlaying()

bool WarblerAudio::isPlaying ( )
inline

◆ play()

void WarblerAudio::play ( const char *  file)
inline

◆ playNext()

void WarblerAudio::playNext ( int  track = -1,
int32_t  warble = -1 
)
inline

◆ queue()

void WarblerAudio::queue ( uint32_t  delayMS = 0,
int  track = -1,
int32_t  warble = -1 
)
inline

◆ read()

int16_t WarblerAudio::read ( )
inline

◆ setBalance()

void WarblerAudio::setBalance ( int8_t  bal = 0)
inline

◆ setup()

virtual void WarblerAudio::setup ( )
inlineoverridevirtual

Subclasses must implement this function to perform any necessary setup that cannot happen in the constructor.

Implements SetupEvent.

◆ setVolume()

void WarblerAudio::setVolume ( uint8_t  vol)
inline

◆ stop()

void WarblerAudio::stop ( )
inline

Member Data Documentation

◆ fDelayMS

uint32_t WarblerAudio::fDelayMS

◆ fStartMS

uint32_t WarblerAudio::fStartMS

◆ fTrack

int WarblerAudio::fTrack

◆ fWarble

int WarblerAudio::fWarble

The documentation for this class was generated from the following file: