FFmpeg
Loading...
Searching...
No Matches
sipr16k.c File Reference
#include <math.h>
#include "sipr.h"
#include "libavutil/attributes.h"
#include "libavutil/common.h"
#include "libavutil/float_dsp.h"
#include "libavutil/mathematics.h"
#include "lsp.h"
#include "acelp_vectors.h"
#include "acelp_pitch_delay.h"
#include "acelp_filters.h"
#include "celp_filters.h"
#include "sipr16kdata.h"

Go to the source code of this file.

Macros

#define DIVIDE_BY_3(x)
 

Functions

static void lsf2lsp (const float *lsf, double *lsp)
 Convert an lsf vector into an lsp vector.
 
static void dequant (float *out, const int *idx, const float *const 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().
 
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().
 
void ff_sipr_decode_frame_16k (SiprContext *ctx, SiprParameters *params, float *out_data)
 
av_cold void ff_sipr_init_16k (SiprContext *ctx)
 

Macro Definition Documentation

◆ DIVIDE_BY_3

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

Definition at line 174 of file sipr16k.c.

Referenced by ff_sipr_decode_frame_16k().

Function Documentation

◆ lsf2lsp()

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().

◆ dequant()

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

Definition at line 53 of file sipr16k.c.

Referenced by lsf_decode_fp_16k().

◆ lsf_decode_fp_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().

◆ dec_delay3_1st()

static int dec_delay3_1st ( int index)
static

Definition at line 80 of file sipr16k.c.

Referenced by ff_sipr_decode_frame_16k().

◆ dec_delay3_2nd()

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().

◆ postfilter()

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().

◆ acelp_lp_decodef()

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().

◆ acelp_decode_gain_codef()

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().

◆ ff_sipr_decode_frame_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().

◆ ff_sipr_init_16k()

av_cold void ff_sipr_init_16k ( SiprContext * ctx)

Definition at line 271 of file sipr16k.c.

Referenced by sipr_decoder_init().