Go to the source code of this file.
Classes | |
struct | g726_state_s |
Typedefs | |
typedef int16_t(* | g726_decoder_func_t )(struct g726_state_s *s, uint8_t code) |
typedef uint8_t(* | g726_encoder_func_t )(struct g726_state_s *s, int16_t amp) |
typedef struct g726_state_s | g726_state_t |
Enumerations | |
enum | { G726_ENCODING_LINEAR = 0, G726_ENCODING_ULAW, G726_ENCODING_ALAW } |
enum | { G726_PACKING_NONE = 0, G726_PACKING_LEFT = 1, G726_PACKING_RIGHT = 2 } |
Functions | |
g726_state_t * | g726_init (g726_state_t *s, int bit_rate, int ext_coding, int packing) |
int | g726_release (g726_state_t *s) |
int | g726_decode (g726_state_t *s, int16_t amp[], const uint8_t g726_data[], int g726_bytes) |
int | g726_encode (g726_state_t *s, uint8_t g726_data[], const int16_t amp[], int len) |
typedef struct g726_state_s g726_state_t |
The following is the definition of the state structure used by the G.726 encoder and decoder to preserve their internal state between successive calls. The meanings of the majority of the state structure fields are explained in detail in the CCITT Recommendation G.721. The field names are essentially indentical to variable names in the bit level description of the coding algorithm included in this Recommendation.
int g726_decode | ( | g726_state_t * | s, | |
int16_t | amp[], | |||
const uint8_t | g726_data[], | |||
int | g726_bytes | |||
) |
Decode a buffer of G.726 ADPCM data to linear PCM, a-law or u-law.
s | The G.726 context. | |
amp | The audio sample buffer. | |
g726_data | ||
g726_bytes |
int g726_encode | ( | g726_state_t * | s, | |
uint8_t | g726_data[], | |||
const int16_t | amp[], | |||
int | len | |||
) |
Encode a buffer of linear PCM data to G.726 ADPCM.
s | The G.726 context. | |
g726_data | The G.726 data produced. | |
amp | The audio sample buffer. | |
len | The number of samples in the buffer. |
g726_state_t* g726_init | ( | g726_state_t * | s, | |
int | bit_rate, | |||
int | ext_coding, | |||
int | packing | |||
) |
Initialise a G.726 encode or decode context.
s | The G.726 context. | |
bit_rate | The required bit rate for the ADPCM data. The valid rates are 16000, 24000, 32000 and 40000. | |
ext_coding | The coding used outside G.726. | |
packing | One of the G.726_PACKING_xxx options. |
int g726_release | ( | g726_state_t * | s | ) |
Free a G.726 encode or decode context.
s | The G.726 context. |