arduino-audio-tools
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ADPCMEncoderXQ Class Reference

Encoder for ADPCM-XQ - Depends on https://github.com/pschatzmann/arduino-adpcm-xq. More...

#include <CodecADPCMXQ.h>

Inheritance diagram for ADPCMEncoderXQ:
AudioEncoder AudioWriter AudioInfoSupport

Public Member Functions

 ADPCMEncoderXQ ()
 
AudioInfo audioInfo () override
 provides the actual input AudioInfo
 
virtual AudioInfo audioInfoOut ()
 
bool begin () override
 
virtual bool begin (AudioInfo info)
 
void end () override
 
virtual uint32_t frameDurationUs ()
 Optional rtsp function: provide the frame duration in microseconds.
 
const charmime () override
 Provides the mime type of the encoded result.
 
 operator bool () override
 
virtual uint16_t samplesPerFrame ()
 Optional rtsp function: provide samples per the frame.
 
void setAudioInfo (AudioInfo from) override
 Defines the sample rate, number of channels and bits per sample.
 
void setBlockSizePower (int pow)
 set bocksizes as 2^pow: range from 8 to 15
 
void setLookahead (int value)
 Set look ahead bytes from 0 to 8.
 
void setNoiseShaping (ADPCMNoiseShaping ns)
 Defines the noise shaping.
 
void setOutput (Print &out_stream) override
 Default output assignment (encoders may override to store Print reference)
 
size_t write (const uint8_t *data, size_t len) override
 

Protected Member Functions

bool encode ()
 
void writeBlocking (Print *out, uint8_t *data, size_t len)
 

Protected Attributes

Vector< uint8_tadpcm_block
 
voidadpcm_cnxt = nullptr
 
int block_size = 0
 
int block_size_pow2 = 0
 
int current_sample = 0
 
AudioInfo info
 
bool is_first = true
 
int lookahead = 0
 
int noise_shaping = (int) NOISE_SHAPING_OFF
 
Printp_print = nullptr
 
Vector< int16_tpcm_block
 
int pcm_block_size
 
int samples_per_block = 0
 

Detailed Description

Encoder for ADPCM-XQ - Depends on https://github.com/pschatzmann/arduino-adpcm-xq.

Author
Phil Schatzmann

Constructor & Destructor Documentation

◆ ADPCMEncoderXQ()

ADPCMEncoderXQ ( )
inline

Member Function Documentation

◆ audioInfo()

AudioInfo audioInfo ( )
inlineoverridevirtualinherited

provides the actual input AudioInfo

Implements AudioInfoSupport.

Reimplemented in CodecNOP, BinaryContainerEncoder, and MP3ParserEncoder.

◆ audioInfoOut()

virtual AudioInfo audioInfoOut ( )
inlinevirtualinherited

◆ begin() [1/2]

bool begin ( )
inlineoverridevirtual

Implements AudioWriter.

◆ begin() [2/2]

virtual bool begin ( AudioInfo  info)
inlinevirtualinherited

◆ encode()

bool encode ( )
inlineprotected

◆ end()

void end ( )
inlineoverridevirtual

Implements AudioWriter.

◆ frameDurationUs()

virtual uint32_t frameDurationUs ( )
inlinevirtualinherited

Optional rtsp function: provide the frame duration in microseconds.

Reimplemented in ADPCMEncoder, OpusOggEncoder, MP3ParserEncoder, and MetaDataFilterEncoder.

◆ mime()

const char * mime ( )
inlineoverridevirtual

Provides the mime type of the encoded result.

Implements AudioEncoder.

◆ operator bool()

operator bool ( )
inlineoverridevirtual

Implements AudioWriter.

◆ samplesPerFrame()

virtual uint16_t samplesPerFrame ( )
inlinevirtualinherited

Optional rtsp function: provide samples per the frame.

Reimplemented in MP3ParserEncoder, and MetaDataFilterEncoder.

◆ setAudioInfo()

void setAudioInfo ( AudioInfo  from)
inlineoverridevirtualinherited

Defines the sample rate, number of channels and bits per sample.

Implements AudioWriter.

Reimplemented in MP3EncoderLAME, EncoderBasic, CodecChain, FLACEncoder, OpusAudioEncoder, WAVEncoder, CodecNOP, G7xxEncoder, BinaryContainerEncoder, OggContainerEncoder, OSCContainerEncoder, and MetaDataFilterEncoder.

◆ setBlockSizePower()

void setBlockSizePower ( int  pow)
inline

set bocksizes as 2^pow: range from 8 to 15

◆ setLookahead()

void setLookahead ( int  value)
inline

Set look ahead bytes from 0 to 8.

◆ setNoiseShaping()

void setNoiseShaping ( ADPCMNoiseShaping  ns)
inline

Defines the noise shaping.

◆ setOutput()

void setOutput ( Print out_stream)
inlineoverridevirtual

Default output assignment (encoders may override to store Print reference)

Reimplemented from AudioEncoder.

◆ write()

size_t write ( const uint8_t data,
size_t  len 
)
inlineoverridevirtual

Implements AudioWriter.

◆ writeBlocking()

void writeBlocking ( Print out,
uint8_t data,
size_t  len 
)
inlineprotectedinherited

Member Data Documentation

◆ adpcm_block

Vector<uint8_t> adpcm_block
protected

◆ adpcm_cnxt

void* adpcm_cnxt = nullptr
protected

◆ block_size

int block_size = 0
protected

◆ block_size_pow2

int block_size_pow2 = 0
protected

◆ current_sample

int current_sample = 0
protected

◆ info

AudioInfo info
protectedinherited

◆ is_first

bool is_first = true
protected

◆ lookahead

int lookahead = 0
protected

◆ noise_shaping

int noise_shaping = (int) NOISE_SHAPING_OFF
protected

◆ p_print

Print* p_print = nullptr
protected

◆ pcm_block

Vector<int16_t> pcm_block
protected

◆ pcm_block_size

int pcm_block_size
protected

◆ samples_per_block

int samples_per_block = 0
protected

The documentation for this class was generated from the following file: