arduino-audio-tools
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 ()
 provides the actual input AudioInfo
 
virtual AudioInfo audioInfoOut ()
 provides the actual output AudioInfo: this is usually the same as audioInfo() unless we use a transforming stream
 
bool begin () override
 
virtual bool begin (AudioInfo info)
 
void end () override
 
const char * mime () override
 Provides the mime type of the encoded result.
 
 operator bool () override
 
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
 
size_t write (const void *in_ptr, size_t in_size) 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

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