AAC Decoder using faad: https://github.com/pschatzmann/arduino-libfaad This needs a stack of around 60000 and you need to make sure that memory is allocated on PSRAM. See https://www.pschatzmann.ch/home/2023/09/12/arduino-audio-tools-faat-aac-decoder/.
More...
#include <CodecAACFAAD.h>
|
| int | id |
| | custom id to be used by application
|
| |
AAC Decoder using faad: https://github.com/pschatzmann/arduino-libfaad This needs a stack of around 60000 and you need to make sure that memory is allocated on PSRAM. See https://www.pschatzmann.ch/home/2023/09/12/arduino-audio-tools-faat-aac-decoder/.
- Author
- Phil Schatzmann
- Copyright
- GPLv3
◆ AACDecoderFAAD()
◆ ~AACDecoderFAAD()
◆ addNotifyAudioChange()
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.
◆ audioInfo()
|
|
inlineoverridevirtualinherited |
provides the actual input AudioInfo
Implements AudioInfoSupport.
Reimplemented in CodecNOP, DecoderBasic, DSFDecoder, MP3DecoderHelix, MP3DecoderMAD, OpusAudioDecoder, OpusMultiStreamAudioDecoder, VorbisDecoder, WAVDecoder, WavIMADecoder, OggContainerDecoder, and VorbisDecoder.
◆ audioInfoOut()
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, and ResampleStreamT< TInterpolator >.
◆ begin() [1/2]
◆ begin() [2/2]
|
|
inlineoverridevirtualinherited |
◆ clearNotifyAudioChange()
| virtual void clearNotifyAudioChange |
( |
| ) |
|
|
inlinevirtualinherited |
◆ decode()
| void decode |
( |
int |
minBufferSize | ) |
|
|
inlineprotected |
◆ end()
◆ flush()
◆ getOutput()
◆ init()
| void init |
( |
uint8_t * |
data, |
|
|
size_t |
len |
|
) |
| |
|
inlineprotected |
◆ isNotifyActive()
Checks if the automatic AudioInfo update is active.
◆ isResultPCM()
| virtual bool isResultPCM |
( |
| ) |
|
|
inlinevirtualinherited |
◆ notifyAudioChange()
◆ operator bool()
| virtual operator bool |
( |
| ) |
|
|
inlinevirtual |
◆ removeNotifyAudioChange()
◆ setAudioInfo()
|
|
inlineoverridevirtualinherited |
◆ setCodecConfig()
| virtual bool setCodecConfig |
( |
const uint8_t * |
data, |
|
|
size_t |
len |
|
) |
| |
|
inlinevirtualinherited |
Some decoders need e.g. a magic cookie to provide the relevant info for decoding.
Reimplemented in DecoderALAC, and MultiDecoder.
◆ setInputBufferSize()
| void setInputBufferSize |
( |
int |
len | ) |
|
|
inline |
Defines the input buffer size.
◆ setNotifyActive()
| void setNotifyActive |
( |
bool |
flag | ) |
|
|
inlineinherited |
Deactivate/Reactivate automatic AudioInfo updates: (default is active)
◆ setOutput() [1/3]
◆ setOutput() [2/3]
◆ setOutput() [3/3]
| virtual void setOutput |
( |
Print & |
out_stream | ) |
|
|
inlineoverridevirtualinherited |
Defines where the decoded result is written to.
Implements AudioWriter.
Reimplemented in DecoderBase64, MP3DecoderMAD, DecoderAdapter, CodecNOP, ADPCMDecoderXQ, APTXDecoder, Codec2Decoder, CopyDecoder, G722Decoder, GSMDecoder, ILBCDecoder, LC3Decoder, DecoderNetworkFormat, SBCDecoder, WavIMADecoder, AACDecoderFDK, AACDecoderHelix, ADPCMDecoder, ADTSDecoder, DecoderBasic, CodecChain, DecoderFloat, G729Decoder, G7xxDecoder, DecoderL16, MTSDecoder, OpusAudioDecoder, OpusMultiStreamAudioDecoder, MTSDecoderTSDemux, WAVDecoder, AVIDecoder, ContainerM4A, MultiDecoder, MetaDataFilterDecoder, MP3DecoderMini, BinaryContainerDecoder, OSCContainerDecoder, MP3DecoderHelix, and OggContainerDecoder.
◆ setUnderflowLimit()
| void setUnderflowLimit |
( |
int |
len | ) |
|
|
inline |
Defines the min number of bytes that are submitted to the decoder.
◆ write()
| size_t write |
( |
const uint8_t * |
data, |
|
|
size_t |
len |
|
) |
| |
|
inlinevirtual |
◆ writeBlocking()
| void writeBlocking |
( |
Print * |
out, |
|
|
uint8_t * |
data, |
|
|
size_t |
len |
|
) |
| |
|
inlineprotectedinherited |
◆ buffer_size_input
| int buffer_size_input = 1024*2 |
|
protected |
◆ conf
| NeAACDecConfigurationPtr conf |
|
protected |
◆ hAac
| NeAACDecHandle hAac = nullptr |
|
protected |
◆ id
custom id to be used by application
◆ info
◆ input_buffer
◆ is_init
◆ is_notify_active
| bool is_notify_active = true |
|
protectedinherited |
◆ notify_vector
◆ p_print
◆ underflow_limit
| int underflow_limit = 500 |
|
protected |
The documentation for this class was generated from the following file: