Microchip® Advanced Software Framework

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Group_adpcm


Functions

void dsp_adpcm_ima_decode (int16_t *out, void *in, int size, int16_t *step_index, int16_t *predicted_value)
 IMA/DVI ADPCM decoder. More...
 
int16_t dsp_adpcm_ima_decode_nibble (int8_t nibble, int16_t *step_index, int16_t *predicted_value)
 IMA/DVI ADPCM sample decoder. More...
 
void dsp_adpcm_ima_encode (void *out, int16_t *in, int size, int16_t *step_index, int16_t *predicted_value)
 IMA/DVI ADPCM encoder. More...
 
int8_t dsp_adpcm_ima_encode_nibble (int16_t nibble, int16_t *step_index, int16_t *predicted_value)
 IMA/DVI ADPCM sample encoder. More...
 

void dsp_adpcm_ima_decode ( int16_t *  out,
void *  in,
int  size,
int16_t *  step_index,
int16_t *  predicted_value 
)

IMA/DVI ADPCM decoder.

Parameters
outA 16-bit data vector that will contain the decoded data.
inA 4-bit data vector that contains the IMA/DVI ADPCM encoded data to decode.
sizeThe number of data to decode.
step_indexA pointer on a 16 bits data which contain the current step index of the ADPCM algorithm.
predicted_valueA pointer on a 16 bits data which contain the current predicted value of the ADPCM algorithm.
int16_t dsp_adpcm_ima_decode_nibble ( int8_t  nibble,
int16_t *  step_index,
int16_t *  predicted_value 
)

IMA/DVI ADPCM sample decoder.

Parameters
nibbleThe sample to decode. It must be a 4-bit data.
step_indexA pointer on a 16 bits data which contain the previous step index of the ADPCM algorithm.
predicted_valueA pointer on a 16 bits data which contain the previous predicted value of the ADPCM algorithm.
Returns
A 16-bit data that corresponds to the sample decoded.
void dsp_adpcm_ima_encode ( void *  out,
int16_t *  in,
int  size,
int16_t *  step_index,
int16_t *  predicted_value 
)

IMA/DVI ADPCM encoder.

Parameters
outA 4-bit data vector that will contain the encoded data.
inA 16-bit data vector that contains the data to encode.
sizeThe number of data to encode.
step_indexA pointer on a 16 bits data which contain the current step index of the ADPCM algorithm.
predicted_valueA pointer on a 16 bits data which contain the current predicted value of the ADPCM algorithm.
Note
Can be performed "in-place".
int8_t dsp_adpcm_ima_encode_nibble ( int16_t  nibble,
int16_t *  step_index,
int16_t *  predicted_value 
)

IMA/DVI ADPCM sample encoder.

Parameters
nibbleThe sample to encode.
step_indexA pointer on a 16 bits data which contain the current step index of the ADPCM algorithm.
predicted_valueA pointer on a 16 bits data which contain the current predicted value of the ADPCM algorithm.
Returns
A 4-bit data that corresponds to the sample encoded.