sipr16k.c File Reference
#include <math.h>
#include "sipr.h"
#include "libavutil/common.h"
#include "libavutil/float_dsp.h"
#include "libavutil/mathematics.h"
#include "lsp.h"
#include "celp_filters.h"
#include "acelp_vectors.h"
#include "acelp_pitch_delay.h"
#include "acelp_filters.h"
#include "sipr16kdata.h"
Include dependency graph for sipr16k.c:

Go to the source code of this file.

Macros

#define DIVIDE_BY_3(x)   ((x) * 10923 >> 15)
 

Functions

static void lsf2lsp (const float *lsf, double *lsp)
 Convert an lsf vector into an lsp vector. More...
 
static void dequant (float *out, const int *idx, const float *cbs[])
 
static void lsf_decode_fp_16k (float *lsf_history, float *isp_new, const int *parm, int ma_pred)
 
static int dec_delay3_1st (int index)
 
static int dec_delay3_2nd (int index, int pit_min, int pit_max, int pitch_lag_prev)
 
static void postfilter (float *out_data, float *synth, float *iir_mem, float *filt_mem[2], float *mem_preemph)
 
static void acelp_lp_decodef (float *lp_1st, float *lp_2nd, const double *lsp_2nd, const double *lsp_prev)
 Floating point version of ff_acelp_lp_decode(). More...
 
static float acelp_decode_gain_codef (float gain_corr_factor, const float *fc_v, float mr_energy, const float *quant_energy, const float *ma_prediction_coeff, int subframe_size, int ma_pred_order)
 Floating point version of ff_acelp_decode_gain_code(). More...
 
void ff_sipr_decode_frame_16k (SiprContext *ctx, SiprParameters *params, float *out_data)
 
void ff_sipr_init_16k (SiprContext *ctx)
 

Macro Definition Documentation

#define DIVIDE_BY_3 (   x)    ((x) * 10923 >> 15)

Definition at line 174 of file sipr16k.c.

Referenced by ff_sipr_decode_frame_16k().

Function Documentation

static float acelp_decode_gain_codef ( float  gain_corr_factor,
const float *  fc_v,
float  mr_energy,
const float *  quant_energy,
const float *  ma_prediction_coeff,
int  subframe_size,
int  ma_pred_order 
)
static

Floating point version of ff_acelp_decode_gain_code().

Definition at line 161 of file sipr16k.c.

Referenced by ff_sipr_decode_frame_16k().

static void acelp_lp_decodef ( float *  lp_1st,
float *  lp_2nd,
const double *  lsp_2nd,
const double *  lsp_prev 
)
static

Floating point version of ff_acelp_lp_decode().

Definition at line 142 of file sipr16k.c.

Referenced by ff_sipr_decode_frame_16k().

static int dec_delay3_1st ( int  index)
static

Definition at line 80 of file sipr16k.c.

Referenced by ff_sipr_decode_frame_16k().

static int dec_delay3_2nd ( int  index,
int  pit_min,
int  pit_max,
int  pitch_lag_prev 
)
static

Definition at line 88 of file sipr16k.c.

Referenced by ff_sipr_decode_frame_16k().

static void dequant ( float *  out,
const int *  idx,
const float *  cbs[] 
)
static

Definition at line 53 of file sipr16k.c.

Referenced by lsf_decode_fp_16k().

void ff_sipr_decode_frame_16k ( SiprContext ctx,
SiprParameters params,
float *  out_data 
)

Definition at line 176 of file sipr16k.c.

Referenced by sipr_decoder_init().

void ff_sipr_init_16k ( SiprContext ctx)

Definition at line 271 of file sipr16k.c.

Referenced by sipr_decoder_init().

static void lsf2lsp ( const float *  lsf,
double *  lsp 
)
static

Convert an lsf vector into an lsp vector.

Parameters
lsfinput lsf vector
lspoutput lsp vector

Definition at line 45 of file sipr16k.c.

Referenced by ff_sipr_decode_frame_16k().

static void lsf_decode_fp_16k ( float *  lsf_history,
float *  isp_new,
const int *  parm,
int  ma_pred 
)
static

Definition at line 63 of file sipr16k.c.

Referenced by ff_sipr_decode_frame_16k().

static void postfilter ( float *  out_data,
float *  synth,
float *  iir_mem,
float *  filt_mem[2],
float *  mem_preemph 
)
static

Definition at line 99 of file sipr16k.c.

Referenced by ff_sipr_decode_frame_16k().