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

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 char * mime () 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_t > adpcm_block
 
void * adpcm_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_t > pcm_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

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

Reimplemented in AACEncoderFDK.

◆ 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.

◆ 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.


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