| spandsp 0.0.6
    | 
#include <stdlib.h>#include <inttypes.h>#include <string.h>#include "floating_fudge.h"#include "spandsp/telephony.h"#include "spandsp/fast_convert.h"#include "spandsp/saturated.h"#include "spandsp/ima_adpcm.h"#include "spandsp/private/ima_adpcm.h"| Macros | |
| #define | STEP_MAX 88 | 
| Functions | |
| ima_adpcm_state_t * | ima_adpcm_init (ima_adpcm_state_t *s, int variant, int chunk_size) | 
| int | ima_adpcm_release (ima_adpcm_state_t *s) | 
| int | ima_adpcm_free (ima_adpcm_state_t *s) | 
| int | ima_adpcm_decode (ima_adpcm_state_t *s, int16_t amp[], const uint8_t ima_data[], int ima_bytes) | 
| int | ima_adpcm_encode (ima_adpcm_state_t *s, uint8_t ima_data[], const int16_t amp[], int len) | 
| #define STEP_MAX 88 | 
The number of ADPCM step sizes
| int ima_adpcm_decode | ( | ima_adpcm_state_t * | s, | 
| int16_t | amp[], | ||
| const uint8_t | ima_data[], | ||
| int | ima_bytes | ||
| ) | 
Decode a buffer of IMA ADPCM data to linear PCM.
| s | The IMA ADPCM context. | 
| amp | The audio sample buffer. | 
| ima_data | The IMA ADPCM data | 
| ima_bytes | The number of bytes of IMA ADPCM data | 
References ima_adpcm_state_s::chunk_size, IMA_ADPCM_DVI4, IMA_ADPCM_IMA4, IMA_ADPCM_VDVI, ima_adpcm_state_s::last, and ima_adpcm_state_s::step_index.
| int ima_adpcm_encode | ( | ima_adpcm_state_t * | s, | 
| uint8_t | ima_data[], | ||
| const int16_t | amp[], | ||
| int | len | ||
| ) | 
Encode a buffer of linear PCM data to IMA ADPCM.
| s | The IMA ADPCM context. | 
| ima_data | The IMA ADPCM data produced. | 
| amp | The audio sample buffer. | 
| len | The number of samples in the buffer. | 
References ima_adpcm_state_s::chunk_size, IMA_ADPCM_DVI4, IMA_ADPCM_IMA4, IMA_ADPCM_VDVI, ima_adpcm_state_s::ima_byte, ima_adpcm_state_s::last, and ima_adpcm_state_s::step_index.
| int ima_adpcm_free | ( | ima_adpcm_state_t * | s | ) | 
Free an IMA ADPCM encode or decode context.
| s | The IMA ADPCM context. | 
| ima_adpcm_state_t * ima_adpcm_init | ( | ima_adpcm_state_t * | s, | 
| int | variant, | ||
| int | chunk_size | ||
| ) | 
Initialise an IMA ADPCM encode or decode context.
| s | The IMA ADPCM context. | 
| variant | IMA_ADPCM_IMA4, IMA_ADPCM_DVI4, or IMA_ADPCM_VDVI. | 
| chunk_size | The size of a chunk, in samples. A chunk size of zero sample samples means treat each encode or decode operation as a chunk. | 
References ima_adpcm_state_s::chunk_size.
| int ima_adpcm_release | ( | ima_adpcm_state_t * | s | ) | 
Release an IMA ADPCM encode or decode context.
| s | The IMA ADPCM context. |