| 
    arduino-audio-tools
    
   | 
 
Both the data of the read or write operations will be converted with the help of the indicated converter. More...
#include <AudioStreams.h>
  
Public Member Functions | |
| ConverterStream (BaseConverter &converter) | |
| ConverterStream (Print &out, BaseConverter &converter) | |
| ConverterStream (Stream &stream, BaseConverter &converter) | |
| 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 () | 
| virtual int | available () override | 
| Returns the available bytes in the buffer: to be avoided.   | |
| virtual int | availableForWrite () | 
| virtual bool | begin () | 
| virtual void | clearNotifyAudioChange () | 
| Deletes all change notify subscriptions.   | |
| virtual void | end () | 
| virtual void | flush () override | 
| bool | isNotifyActive () | 
| Checks if the automatic AudioInfo update is active.  | |
| virtual | operator bool () | 
| 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 | setConverter (BaseConverter &cnv) | 
| void | setNotifyActive (bool flag) | 
| Deactivate/Reactivate automatic AudioInfo updates: (default is active)  | |
| void | setOutput (Print &out) | 
| Defines/Changes the output target.   | |
| void | setStream (Stream &stream) | 
| Defines/Changes the input & output.   | |
| void | setWriteBufferSize (int size) | 
| virtual size_t | write (const uint8_t *data, size_t len) | 
| 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 () | 
Protected Attributes | |
| int | _timeout = 10 | 
| AudioInfo | info | 
| bool | is_notify_active = true | 
| Vector< AudioInfoSupport * > | notify_vector | 
| BaseConverter * | p_converter | 
| Print * | p_out = nullptr | 
| Stream * | p_stream = nullptr | 
| RingBuffer< uint8_t > | tmp_in {0} | 
| RingBuffer< uint8_t > | tmp_out {0} | 
| int | write_buffer_size = MAX_SINGLE_CHARS | 
Both the data of the read or write operations will be converted with the help of the indicated converter.
| T | 
| out | |
| converter | 
      
  | 
  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 PureDataStream, PWMAudioOutput, ChannelFormatConverterStreamT< T >, ChannelFormatConverterStream, NumberFormatConverterStreamT< TFrom, TTo >, NumberFormatConverterStream, FormatConverterStream, Pipeline, ResampleStream, and ResampleStreamT< TInterpolator >.
      
  | 
  inlineoverridevirtual | 
Returns the available bytes in the buffer: to be avoided.
Reimplemented from BaseStream.
      
  | 
  inlinevirtual | 
Reimplemented from BaseStream.
      
  | 
  inlinevirtualinherited | 
Reimplemented in AudioOutputWithCallback, SPDIFOutput, VS1053Stream, WM8960Stream, AdaptiveResamplingStream, ESPNowStream, Equalizer3BandsPerChannel, TimerCallbackAudioStream, FrequencyDetectorAutoCorrelation, GoertzelStream, AudioFFTBase, HLSStreamT< URLStream >, AnalogAudioArduino, AnalogAudioStream, MemoryStream, GeneratedSoundStream< T >, GeneratedSoundStream< int16_t >, AudioInputMonitor, FormatConverterStream, QueueStream< T >, QueueStream< uint8_t >, DynamicMemoryStream, and Pipeline.
      
  | 
  inlinevirtualinherited | 
Deletes all change notify subscriptions.
Reimplemented in RTSPClient< TcpClient, UdpSocket >.
      
  | 
  inlinevirtualinherited | 
Reimplemented in FaustStream< DSP >, I2SCodecStream, VS1053Stream, WM8960Stream, AdaptiveResamplingStream, ESPNowStream, I2SStream, TimerCallbackAudioStream, GoertzelStream, AudioFFTBase, AudioKitStream, HLSStreamT< URLStream >, HttpRequest, ICYStreamT< T >, AnalogAudioStream, GeneratedSoundStream< T >, GeneratedSoundStream< int16_t >, InputMixer< T >, InputMerge< T >, QueueStream< T >, QueueStream< uint8_t >, and Pipeline.
      
  | 
  inlineoverridevirtualinherited | 
Reimplemented from Print.
Reimplemented in ResampleStream, BufferedTaskStream, and BufferedStream.
      
  | 
  inlinevirtualinherited | 
Reimplemented in A2DPStream, ICYStreamT< T >, I2SStream, MemoryStream, and Pipeline.
      
  | 
  inlineoverridevirtual | 
Reimplemented from AudioStream.
      
  | 
  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, ChannelFormatConverterStreamT< T >, ChannelFormatConverterStream, VolumeStream, MiniAudioStream, PortAudioStream, I2SCodecStream, MozziStream, SPDIFOutput, AudioLoRa, AnalogAudioStream, I2SStream, TimerCallbackAudioStream, AudioBLEStream, LoRaStream, AudioFFTBase, AudioKitStream, VBANStream, AnalogAudioArduino, Equalizer3Bands, Equalizer3BandsPerChannel, AdapterAudioOutputToAudioStream, TimedStream, MeasuringStream, ProgressStream, CallbackStream, VolumeMeter, AudioInputMonitor, FormatConverterStream, FadeStream, GoertzelStream, Pipeline::ModifyingStreamAdapter, EncodedAudioStream, PureDataStream, GeneratedSoundStream< T >, GeneratedSoundStream< int16_t >, NumberFormatConverterStreamT< TFrom, TTo >, NumberFormatConverterStream, Pipeline, ResampleStream, and ResampleStreamT< TInterpolator >.
      
  | 
  inlinevirtual | 
Defines/Changes the output target.
Implements ModifyingStream.
      
  | 
  inlinevirtual | 
Defines/Changes the input & output.
Implements ModifyingStream.
      
  | 
  inlinevirtual | 
Reimplemented from AudioStream.
      
  | 
  inlineoverridevirtualinherited | 
Reimplemented in BufferedTaskStream, and BufferedStream.