FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions
g723_1.c File Reference
#include <stdint.h>
#include "libavutil/common.h"
#include "acelp_vectors.h"
#include "avcodec.h"
#include "celp_math.h"
#include "g723_1.h"

Go to the source code of this file.

Functions

int ff_g723_1_scale_vector (int16_t *dst, const int16_t *vector, int length)
 Scale vector contents based on the largest of their absolutes. More...
 
int ff_g723_1_normalize_bits (int num, int width)
 Calculate the number of left-shifts required for normalizing the input. More...
 
int ff_g723_1_dot_product (const int16_t *a, const int16_t *b, int length)
 
void ff_g723_1_get_residual (int16_t *residual, int16_t *prev_excitation, int lag)
 Get delayed contribution from the previous excitation vector. More...
 
void ff_g723_1_gen_dirac_train (int16_t *buf, int pitch_lag)
 Generate a train of dirac functions with period as pitch lag. More...
 
void ff_g723_1_gen_acb_excitation (int16_t *vector, int16_t *prev_excitation, int pitch_lag, G723_1_Subframe *subfrm, enum Rate cur_rate)
 Generate adaptive codebook excitation. More...
 
static void lsp2lpc (int16_t *lpc)
 Convert LSP frequencies to LPC coefficients. More...
 
void ff_g723_1_lsp_interpolate (int16_t *lpc, int16_t *cur_lsp, int16_t *prev_lsp)
 Quantize LSP frequencies by interpolation and convert them to the corresponding LPC coefficients. More...
 
void ff_g723_1_inverse_quant (int16_t *cur_lsp, int16_t *prev_lsp, uint8_t *lsp_index, int bad_frame)
 Perform inverse quantization of LSP frequencies. More...
 

Function Documentation

int ff_g723_1_scale_vector ( int16_t *  dst,
const int16_t *  vector,
int  length 
)

Scale vector contents based on the largest of their absolutes.

Definition at line 32 of file g723_1.c.

Referenced by comp_autocorr(), comp_interp_index(), formant_postfilter(), and g723_1_encode_frame().

int ff_g723_1_normalize_bits ( int  num,
int  width 
)

Calculate the number of left-shifts required for normalizing the input.

Parameters
numinput number
widthwidth of the input, 16 bits(0) / 32 bits(1)

Definition at line 49 of file g723_1.c.

Referenced by acb_search(), comp_autocorr(), comp_harmonic_coeff(), comp_ppf_coeff(), estimate_pitch(), gain_scale(), get_fcb_param(), lpc2lsp(), and lsp_quantize().

int ff_g723_1_dot_product ( const int16_t *  a,
const int16_t *  b,
int  length 
)
void ff_g723_1_get_residual ( int16_t *  residual,
int16_t *  prev_excitation,
int  lag 
)

Get delayed contribution from the previous excitation vector.

Definition at line 60 of file g723_1.c.

Referenced by acb_search(), and ff_g723_1_gen_acb_excitation().

void ff_g723_1_gen_dirac_train ( int16_t *  buf,
int  pitch_lag 
)

Generate a train of dirac functions with period as pitch lag.

Definition at line 74 of file g723_1.c.

Referenced by fcb_search(), gen_fcb_excitation(), and get_fcb_param().

void ff_g723_1_gen_acb_excitation ( int16_t *  vector,
int16_t *  prev_excitation,
int  pitch_lag,
G723_1_Subframe subfrm,
enum Rate  cur_rate 
)

Generate adaptive codebook excitation.

Definition at line 86 of file g723_1.c.

Referenced by g723_1_decode_frame(), g723_1_encode_frame(), and generate_noise().

static void lsp2lpc ( int16_t *  lpc)
static

Convert LSP frequencies to LPC coefficients.

Parameters
lpcbuffer for LPC coefficients

Definition at line 118 of file g723_1.c.

Referenced by ff_g723_1_lsp_interpolate().

void ff_g723_1_lsp_interpolate ( int16_t *  lpc,
int16_t *  cur_lsp,
int16_t *  prev_lsp 
)

Quantize LSP frequencies by interpolation and convert them to the corresponding LPC coefficients.

Parameters
lpcbuffer for LPC coefficients
cur_lspthe current LSP vector
prev_lspthe previous LSP vector

Definition at line 180 of file g723_1.c.

Referenced by g723_1_decode_frame(), and g723_1_encode_frame().

void ff_g723_1_inverse_quant ( int16_t *  cur_lsp,
int16_t *  prev_lsp,
uint8_t lsp_index,
int  bad_frame 
)

Perform inverse quantization of LSP frequencies.

Parameters
cur_lspthe current LSP vector
prev_lspthe previous LSP vector
lsp_indexVQ indices
bad_framebad frame flag

Definition at line 201 of file g723_1.c.

Referenced by g723_1_decode_frame(), and g723_1_encode_frame().