Arduino A2DP
Loading...
Searching...
No Matches
Classes
Codecs

Custom decoders (A2DP Sink) and encoders (A2DP Source) that support additional codecs (e.g. AAC) with the help of the AudioTools library. More...

Classes

class  A2DPAudioDecoder
 Manages the set of A2DPDecoder instances registered via BluetoothA2DPSink::add_decoder() and delegates decode operations to whichever one matches the codec negotiated by the connected source - no codec is special-cased here, it is all driven by the registered set. More...
 
class  A2DPAudioEncoder
 Manages the set of A2DPEncoder instances registered via BluetoothA2DPSource::add_encoder(), delegates encode operations to whichever one matches the codec negotiated with the connected sink and packs the encoded frames into A2DP media packets that are sent with esp_a2d_source_audio_data_send(). More...
 
class  A2DPDecoder
 Base class for a single A2DP codec's decode support: pairs an A2DP codec type and its SEP capability advertisement with an audio_tools::AudioDecoder that performs the actual decoding. Provide one concrete subclass per codec (see A2DPDecoderSBC, A2DPDecoderAAC) and register instances via BluetoothA2DPSink::add_decoder() - stream endpoint registration is driven entirely by what gets registered here. More...
 
class  A2DPDecoderAAC
 AAC decode support for the managed A2DP decoder framework: wraps any audio_tools::AudioDecoder that decodes AAC - e.g. audio_tools::AACDecoderHelix (arduino-libhelix), AACDecoderFDK (arduino-fdk-aac) or AACDecoderFAAD (arduino-libfaad) - and advertises the AAC SEP capability. Construct your decoder of choice, include its codec header yourself (e.g. "AudioTools/AudioCodecs/CodecAACHelix.h"), and register an A2DPDecoderAAC wrapping it via BluetoothA2DPSink::add_decoder(). More...
 
class  A2DPDecoderSBC
 SBC decode support for the managed A2DP decoder framework: wraps any audio_tools::AudioDecoder that decodes SBC - e.g. audio_tools::SBCDecoder (arduino-libsbc) - and advertises the SBC SEP capability. Construct your decoder of choice, include its codec header yourself (e.g. "AudioTools/AudioCodecs/CodecSBC.h"), and register an A2DPDecoderSBC wrapping it via BluetoothA2DPSink::add_decoder(). More...
 
class  A2DPEncoder
 Base class for a single A2DP codec's encode support: pairs an A2DP codec type and its SEP capability advertisement with an audio_tools::AudioEncoder that performs the actual encoding. Provide one concrete subclass per codec (see A2DPEncoderSBC, A2DPEncoderAAC) and register instances via BluetoothA2DPSource::add_encoder() - stream endpoint registration is driven entirely by what gets registered here. More...
 
class  A2DPEncoderAAC
 AAC-LC encode support for the managed A2DP encoder framework: wraps any audio_tools::AudioEncoder that produces AAC-LC - e.g. audio_tools::AACEncoderFDK (codec-fdk-aac) or AACEncoderVO (codec-vo-aacenc) - and advertises the AAC SEP capability. Construct and configure (e.g. bitrate) your encoder of choice, include its codec header yourself, and register an A2DPEncoderAAC wrapping it via BluetoothA2DPSource::add_encoder(). More...
 
class  A2DPEncoderSBC
 SBC encode support for the managed A2DP encoder framework: wraps an audio_tools::SBCEncoder (codec-sbc / arduino-libsbc), advertises the SBC SEP capability and configures the encoder (subbands, blocks, allocation method and bitpool) with the parameters negotiated with the sink. Register it via BluetoothA2DPSource::add_encoder(). More...
 
class  A2DPFrameSink
 Receives the encoded frames produced by an A2DPEncoder (implemented by A2DPAudioEncoder, which packs them into A2DP media packets). More...
 

Detailed Description

Custom decoders (A2DP Sink) and encoders (A2DP Source) that support additional codecs (e.g. AAC) with the help of the AudioTools library.