Decoder for SBC. Depends on https://github.com/pschatzmann/arduino-libsbc. Inspired by sbcdec.c.
More...
#include <CodecSBC.h>
|
| int | id |
| | custom id to be used by application
|
| |
Decoder for SBC. Depends on https://github.com/pschatzmann/arduino-libsbc. Inspired by sbcdec.c.
- Author
- Phil Schatzmann
- Copyright
- GPLv3
◆ SBCDecoder()
◆ ~SBCDecoder()
◆ 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 |
◆ bytesCompressed()
Provides the compressed length in bytes (after encoding)
◆ bytesUncompressed()
| int bytesUncompressed |
( |
| ) |
|
|
inline |
◆ clearNotifyAudioChange()
| virtual void clearNotifyAudioChange |
( |
| ) |
|
|
inlinevirtualinherited |
◆ codeSize()
◆ end()
◆ firstWrite()
| int firstWrite |
( |
const void * |
data, |
|
|
size_t |
length |
|
) |
| |
|
inlineprotected |
◆ frameLength()
Provides the compressed length in bytes (after encoding)
◆ getOutput()
◆ isNotifyActive()
Checks if the automatic AudioInfo update is active.
◆ isResultPCM()
| virtual bool isResultPCM |
( |
| ) |
|
|
inlinevirtualinherited |
◆ isValidFrameLen()
| bool isValidFrameLen |
( |
int |
len | ) |
|
|
inlineprotected |
◆ notifyAudioChange()
◆ operator bool()
◆ processByte()
| void processByte |
( |
uint8_t |
byte | ) |
|
|
inlineprotected |
Build decoding buffer and decode when frame is full.
◆ 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.
◆ 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 | ) |
|
|
inlinevirtual |
Defines where the decoded result is written to.
Reimplemented from AudioDecoder.
◆ setupAudioInfo()
◆ setupInputBuffer()
| void setupInputBuffer |
( |
int |
len | ) |
|
|
inlineprotected |
◆ write()
| virtual size_t write |
( |
const uint8_t * |
data, |
|
|
size_t |
len |
|
) |
| |
|
inlinevirtual |
◆ writeBlocking()
| void writeBlocking |
( |
Print * |
out, |
|
|
uint8_t * |
data, |
|
|
size_t |
len |
|
) |
| |
|
inlineprotectedinherited |
◆ framelen
◆ id
custom id to be used by application
◆ info
◆ input_buffer
| uint8_t* input_buffer = nullptr |
|
protected |
◆ input_pos
◆ is_active
◆ is_first
◆ is_notify_active
| bool is_notify_active = true |
|
protectedinherited |
◆ notify_vector
◆ p_print
◆ result_buffer
| uint8_t* result_buffer = nullptr |
|
protected |
◆ result_buffer_size
◆ sbc
The documentation for this class was generated from the following file: