arduino-audio-tools
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
VolumeOutput Class Reference

A simple class to determine the volume. More...

#include <AudioOutput.h>

Inheritance diagram for VolumeOutput:
AudioOutput Print AudioInfoSupport AudioInfoSource

Public Member Functions

virtual AudioInfo audioInfo () override
 
virtual int availableForWrite () override
 
virtual bool begin ()
 
virtual bool begin (AudioInfo info)
 
void clear ()
 Resets the actual volume.
 
virtual void end ()
 
virtual void flush () override
 
virtual bool isDeletable ()
 If true we need to release the related memory in the destructor.
 
 operator bool ()
 
void setAudioInfo (AudioInfo info)
 
virtual void setNotifyAudioChange (AudioInfoSupport &bi) override
 
virtual bool validate (AudioInfo &info)
 
float volume ()
 
float volume (int channel)
 
size_t write (const uint8_t *buffer, size_t size)
 
virtual size_t write (uint8_t ch) override
 
virtual void writeSilence (size_t len)
 

Protected Member Functions

void commit ()
 
void updateVolume (float tmp, int j)
 
template<typename T >
void updateVolumes (const uint8_t *buffer, size_t size)
 

Protected Attributes

AudioInfo cfg
 
float f_volume = 0
 
float f_volume_tmp = 0
 
AudioInfo info
 
bool is_active = false
 
AudioInfoSupportp_notify = nullptr
 
SingleBuffer< uint8_t > tmp {MAX_SINGLE_CHARS}
 
int tmpPos = 0
 
Vector< float > volumes {0}
 
Vector< float > volumes_tmp {0}
 

Detailed Description

A simple class to determine the volume.

Author
Phil Schatzmann

Member Function Documentation

◆ volume() [1/2]

float volume ( )
inline

Determines the volume (max amplitude). The range depends on the bits_per_sample.

◆ volume() [2/2]

float volume ( int  channel)
inline

Determines the volume for the indicated channel. You must call the begin method to define the number of channels

◆ writeSilence()

virtual void writeSilence ( size_t  len)
inlinevirtualinherited

Writes n 0 values (= silence)

Parameters
len

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