FFmpeg
Macros | Functions
aacsbr.c File Reference
#include "aac.h"
#include "sbr.h"
#include "aacsbr.h"
#include "aacsbrdata.h"
#include "aacps.h"
#include "sbrdsp.h"
#include "libavutil/internal.h"
#include "libavutil/intfloat.h"
#include "libavutil/libm.h"
#include "libavutil/avassert.h"
#include "libavutil/mem_internal.h"
#include <stdint.h>
#include <float.h>
#include <math.h>
#include "aacsbr_template.c"

Go to the source code of this file.

Macros

#define USE_FIXED   0
 

Functions

static av_always_inline float exp2fi (int x)
 2^(x) for integer x More...
 
static void aacsbr_func_ptr_init (AACSBRContext *c)
 
static void make_bands (int16_t *bands, int start, int stop, int num_bands)
 
static void sbr_dequant (SpectralBandReplication *sbr, int id_aac)
 Dequantization and stereo decoding (14496-3 sp04 p203) More...
 
static void sbr_hf_inverse_filter (SBRDSPContext *dsp, float(*alpha0)[2], float(*alpha1)[2], const float X_low[32][40][2], int k0)
 High Frequency Generation (14496-3 sp04 p214+) and Inverse Filtering (14496-3 sp04 p214) Warning: This routine does not seem numerically stable. More...
 
static void sbr_chirp (SpectralBandReplication *sbr, SBRData *ch_data)
 Chirp Factors (14496-3 sp04 p214) More...
 
static void sbr_gain_calc (SpectralBandReplication *sbr, SBRData *ch_data, const int e_a[2])
 Calculation of levels of additional HF signal components (14496-3 sp04 p219) and Calculation of gain (14496-3 sp04 p219) More...
 
static void sbr_hf_assemble (float Y1[38][64][2], const float X_high[64][40][2], SpectralBandReplication *sbr, SBRData *ch_data, const int e_a[2])
 Assembling HF Signals (14496-3 sp04 p220) More...
 

Detailed Description

AAC Spectral Band Replication decoding functions

Author
Robert Swain ( rob opendot cl )

Definition in file aacsbr.c.

Macro Definition Documentation

◆ USE_FIXED

#define USE_FIXED   0

Definition at line 28 of file aacsbr.c.

Function Documentation

◆ exp2fi()

static av_always_inline float exp2fi ( int  x)
static

2^(x) for integer x

Returns
correctly rounded float

Definition at line 54 of file aacsbr.c.

Referenced by sbr_dequant().

◆ aacsbr_func_ptr_init()

static void aacsbr_func_ptr_init ( AACSBRContext c)
static

◆ make_bands()

static void make_bands ( int16_t *  bands,
int  start,
int  stop,
int  num_bands 
)
static

Definition at line 71 of file aacsbr.c.

Referenced by sbr_make_f_master().

◆ sbr_dequant()

static void sbr_dequant ( SpectralBandReplication sbr,
int  id_aac 
)
static

Dequantization and stereo decoding (14496-3 sp04 p203)

Definition at line 90 of file aacsbr.c.

Referenced by ff_sbr_apply().

◆ sbr_hf_inverse_filter()

static void sbr_hf_inverse_filter ( SBRDSPContext dsp,
float(*)  alpha0[2],
float(*)  alpha1[2],
const float  X_low[32][40][2],
int  k0 
)
static

High Frequency Generation (14496-3 sp04 p214+) and Inverse Filtering (14496-3 sp04 p214) Warning: This routine does not seem numerically stable.

Definition at line 157 of file aacsbr.c.

Referenced by aacsbr_func_ptr_init().

◆ sbr_chirp()

static void sbr_chirp ( SpectralBandReplication sbr,
SBRData ch_data 
)
static

Chirp Factors (14496-3 sp04 p214)

Definition at line 212 of file aacsbr.c.

Referenced by ff_sbr_apply().

◆ sbr_gain_calc()

static void sbr_gain_calc ( SpectralBandReplication sbr,
SBRData ch_data,
const int  e_a[2] 
)
static

Calculation of levels of additional HF signal components (14496-3 sp04 p219) and Calculation of gain (14496-3 sp04 p219)

Definition at line 236 of file aacsbr.c.

Referenced by ff_sbr_apply().

◆ sbr_hf_assemble()

static void sbr_hf_assemble ( float  Y1[38][64][2],
const float  X_high[64][40][2],
SpectralBandReplication sbr,
SBRData ch_data,
const int  e_a[2] 
)
static

Assembling HF Signals (14496-3 sp04 p220)

Definition at line 293 of file aacsbr.c.

Referenced by aacsbr_func_ptr_init().