|
arduino-audio-tools
|
EffectsStream supporting variable bits_per_sample. This class is only available when __cplusplus >= 201703L. Otherwise AudioEffectStream results in using AudioEffectStream = AudioEffectStreamT<effect_t>;. More...
#include <AudioEffects.h>


Public Member Functions | |
| AudioEffectStream ()=default | |
| AudioEffectStream (Print &out) | |
| AudioEffectStream (Stream &io) | |
| void | addEffect (AudioEffect &effect) |
| Adds an effect object (by reference) | |
| void | addEffect (AudioEffect *effect) |
| Adds an effect using a pointer. | |
| void | addEffect (int channel, AudioEffect &effect) |
| Adds an effect object (by reference) directly to a single channel's own chain. | |
| void | addEffect (int channel, AudioEffect *effect) |
| Adds an effect using a pointer directly to a single channel's own chain. | |
| virtual void | addNotifyAudioChange (AudioInfoSupport &bi) |
| Adds target to be notified about audio changes. | |
| virtual AudioInfo | audioInfo () override |
| provides the actual input AudioInfo | |
| virtual AudioInfo | audioInfoOut () |
| int | available () override |
| int | availableForWrite () override |
| bool | begin () |
| bool | begin (AudioInfo cfg) |
| int | channelCount () |
| Provides the number of channels that have their own effect chain (valid after begin()) | |
| AudioEffectCommon & | channelEffects (int channel) |
| Provides access to a single channel's own effect chain (valid after begin()) | |
| void | clear () |
| deletes all defined effects | |
| virtual void | clearNotifyAudioChange () |
| Deletes all change notify subscriptions. | |
| AudioInfo | defaultConfig () |
| void | end () override |
| AudioEffect * | findEffect (int id) |
| Finds an effect by id. | |
| void | flush () override |
| bool | isNotifyActive () |
| Checks if the automatic AudioInfo update is active. | |
| virtual | operator bool () |
| AudioEffect * | operator[] (int idx) |
| gets an effect by index | |
| size_t | readBytes (uint8_t *data, size_t len) override |
| virtual size_t | readSilence (uint8_t *buffer, size_t length) |
| Source to generate silence: just sets the buffer to 0. | |
| virtual bool | removeNotifyAudioChange (AudioInfoSupport &bi) |
| Removes a target in order not to be notified about audio changes. | |
| virtual void | setAudioInfo (AudioInfo newInfo) override |
| Defines the input AudioInfo. | |
| void | setInput (Stream &io) |
| void | setNotifyActive (bool flag) |
| Deactivate/Reactivate automatic AudioInfo updates: (default is active) | |
| virtual void | setOutput (AudioOutput &out) |
| Defines/Changes the output target and registers for audio change notifications. | |
| void | setOutput (Print &print) |
| Defines/Changes the output target. | |
| void | setOutput (Stream &io) |
| virtual void | setStream (AudioStream &io) |
| Defines/Changes the input & output and registers for audio change notifications. | |
| void | setStream (Stream &io) |
| Defines/Changes the input & output. | |
| void | setWriteBufferSize (int size) |
| size_t | size () |
| Provides the actual number of defined effects. | |
| size_t | write (const uint8_t *data, size_t len) override |
| virtual size_t | write (uint8_t ch) override |
| virtual void | writeSilence (size_t len) |
| Writes len bytes of silence (=0). | |
Protected Member Functions | |
| virtual int | not_supported (int out, const char *msg="") |
| void | notifyAudioChange (AudioInfo info) |
| void | refillReadBuffer () |
| Refill small read buffer (e.g. 8 bytes) to avoid single byte reads when calling read() | |
Protected Attributes | |
| int | _timeout = 10 |
| AudioInfo | info |
| bool | is_notify_active = true |
| Vector< AudioInfoSupport * > | notify_vector |
| Stream * | p_io =nullptr |
| Print * | p_out =nullptr |
| RingBuffer< uint8_t > | tmp_in {0} |
| RingBuffer< uint8_t > | tmp_out {0} |
| std::variant< AudioEffectStreamT< int16_t >, AudioEffectStreamT< int24_t >, AudioEffectStreamT< int32_t > > | variant |
| int | write_buffer_size = MAX_SINGLE_CHARS |
EffectsStream supporting variable bits_per_sample. This class is only available when __cplusplus >= 201703L. Otherwise AudioEffectStream results in using AudioEffectStream = AudioEffectStreamT<effect_t>;.
|
default |
|
inline |
|
inline |
|
inline |
Adds an effect object (by reference)
|
inline |
Adds an effect using a pointer.
|
inline |
Adds an effect object (by reference) directly to a single channel's own chain.
|
inline |
Adds an effect using a pointer directly to a single channel's own chain.
|
inlinevirtualinherited |
Adds target to be notified about audio changes.
Reimplemented in CodecNOP, EncodedAudioOutput, EncodedAudioStream, AACDecoderFDK, DecoderBasic, CodecChain, MP3DecoderHelix, MP3DecoderMAD, OggContainerDecoder, RTSPClient< TcpClient, UdpSocket >, Pipeline, and Pipeline::ModifyingStreamAdapter.
|
inlineoverridevirtualinherited |
provides the actual input AudioInfo
Implements AudioInfoSupport.
Reimplemented in JupyterAudioT< T >, MozziStream, TimerCallbackAudioStream, EncodedAudioStream, PureDataStream, AdapterAudioOutputToAudioStream, GeneratedSoundStream< T >, GeneratedSoundStream< int16_t >, and InputMerge< T >.
|
inlinevirtualinherited |
provides the actual output AudioInfo: this is usually the same as audioInfo() unless we use a transforming stream
Reimplemented in MP3EncoderShine, PureDataStream, PWMAudioOutput< PWMDriverT >, ChannelFormatConverterStreamT< T >, ChannelFormatConverterStream, NumberFormatConverterStreamT< TFrom, TTo >, NumberFormatConverterStream, FormatConverterStream, Pipeline, ResampleStream, ResampleStreamT< TInterpolator >, and SupportedRatesStream.
|
inlineoverridevirtual |
Reimplemented from BaseStream.
|
inlineoverridevirtual |
Reimplemented from BaseStream.
|
inlinevirtual |
Reimplemented from BaseStream.
|
inline |
Provides the number of channels that have their own effect chain (valid after begin())
|
inline |
Provides access to a single channel's own effect chain (valid after begin())
|
inline |
deletes all defined effects
|
inlinevirtualinherited |
Deletes all change notify subscriptions.
Reimplemented in RTSPClient< TcpClient, UdpSocket >.
|
inline |
|
inlineoverridevirtual |
Reimplemented from BaseStream.
|
inline |
Finds an effect by id.
|
inlineoverridevirtual |
Reimplemented from BaseStream.
|
inlineprotectedinherited |
|
inlinevirtualinherited |
|
inline |
gets an effect by index
Provides the audio data by reading the assinged Stream and applying the effects on that input
Reimplemented from AudioStream.
Source to generate silence: just sets the buffer to 0.
|
inlineprotectedinherited |
Refill small read buffer (e.g. 8 bytes) to avoid single byte reads when calling read()
|
inlinevirtualinherited |
Removes a target in order not to be notified about audio changes.
Reimplemented in RTSPClient< TcpClient, UdpSocket >.
|
inlineoverridevirtualinherited |
Defines the input AudioInfo.
Implements AudioInfoSupport.
Reimplemented in VS1053Stream, WM8960Stream, AutomaticGainControlStream, VolumeStream, ChannelFormatConverterStreamT< T >, ChannelFormatConverterStream, MiniAudioStream, PortAudioStream, I2SCodecStream, MozziStream, SPDIFOutput, AudioLoRa, AnalogAudioStream, I2SStream, TimerCallbackAudioStream, MDFEchoCancellationStream< T, SampleType >, AudioKitStream, NRF24Stream, SPIAudioSlave, USBAudioDeviceBase, USBAudioHostBase, VBANStream, GoertzelStream, MeasuringStream, QualityAnalysisStream, Equalizer3BandsT< T >, Equalizer3BandsPerChannelT< T >, AdapterAudioOutputToAudioStream, TimedStream, ProgressStream, CallbackStream, VolumeMeter, AudioInputMonitor, FormatConverterStream, FadeStream, Pipeline::ModifyingStreamAdapter, AudioFFTBase, EncodedAudioStream, PureDataStream, BLESerialStream, GeneratedSoundStream< T >, GeneratedSoundStream< int16_t >, NumberFormatConverterStreamT< TFrom, TTo >, NumberFormatConverterStream, Pipeline, ResampleStream, ResampleStreamT< TInterpolator >, and SupportedRatesStream.
|
inline |
|
inlineinherited |
Deactivate/Reactivate automatic AudioInfo updates: (default is active)
|
inlinevirtualinherited |
Defines/Changes the output target and registers for audio change notifications.
Reimplemented in TimedStream, VolumeMeter, AudioInputMonitor, ReformatBaseStream, FormatConverterStream, and EncodedAudioStream.
|
inlinevirtual |
Defines/Changes the output target.
Implements ModifyingStream.
|
inline |
|
inlinevirtualinherited |
Defines/Changes the input & output and registers for audio change notifications.
Reimplemented in VolumeMeter, AudioInputMonitor, FormatConverterStream, ReformatBaseStream, TimedStream, and EncodedAudioStream.
|
inlinevirtual |
Defines/Changes the input & output.
Implements ModifyingStream.
|
inlineinherited |
|
inline |
Provides the actual number of defined effects.
Writes the samples passed in the buffer and applies the effects before writing the result to the output defined in the constructor.
Reimplemented from AudioStream.
Reimplemented in MemoryStream, AudioStreamWrapper, BufferedTaskStream, RingBufferStream, BufferedStream, and URLStream.
|
inlinevirtualinherited |
Writes len bytes of silence (=0).
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protected |
|
protected |
|
protectedinherited |
|
protectedinherited |
|
protected |
|
protectedinherited |