FFmpeg
Loading...
Searching...
No Matches
aacdec_dsp_template.c File Reference
#include "aacdec.h"
#include "libavcodec/lpc_functions.h"
#include "libavcodec/aactab.h"

Go to the source code of this file.

Macros

#define SET(member)
 

Functions

static void AAC_RENAME dequant_scalefactors (SingleChannelElement *sce)
 Convert integer scalefactors to the decoder's native expected scalefactor values.
 
static void AAC_RENAME apply_mid_side_stereo (AACDecContext *ac, ChannelElement *cpe)
 Mid/Side stereo decoding; reference: 4.6.8.1.3.
 
static void AAC_RENAME apply_intensity_stereo (AACDecContext *ac, ChannelElement *cpe, int ms_present)
 intensity stereo decoding; reference: 4.6.8.2.3
 
static void AAC_RENAME apply_tns (void *_coef_param, TemporalNoiseShaping *tns, IndividualChannelStream *ics, int decode)
 Decode Temporal Noise Shaping filter coefficients and apply all-pole filters; reference: 4.6.9.3.
 
static void AAC_RENAME windowing_and_mdct_ltp (AACDecContext *ac, INTFLOAT *out, INTFLOAT *in, IndividualChannelStream *ics)
 Apply windowing and MDCT to obtain the spectral coefficient from the predicted sample by LTP.
 
static void AAC_RENAME apply_ltp (AACDecContext *ac, SingleChannelElement *sce)
 Apply the long term prediction.
 
static void AAC_RENAME update_ltp (AACDecContext *ac, SingleChannelElement *sce)
 Update the LTP buffer for next frame.
 
static void AAC_RENAME imdct_and_windowing (AACDecContext *ac, SingleChannelElement *sce)
 Conduct IMDCT and windowing.
 
static void AAC_RENAME imdct_and_windowing_768 (AACDecContext *ac, SingleChannelElement *sce)
 Conduct IMDCT and windowing for 768-point frames.
 
static void AAC_RENAME imdct_and_windowing_960 (AACDecContext *ac, SingleChannelElement *sce)
 Conduct IMDCT and windowing.
 
static void AAC_RENAME imdct_and_windowing_ld (AACDecContext *ac, SingleChannelElement *sce)
 
static void AAC_RENAME imdct_and_windowing_eld (AACDecContext *ac, SingleChannelElement *sce)
 
static void AAC_RENAME clip_output (AACDecContext *ac, ChannelElement *che, int type, int samples)
 
static void reset_all_predictors (PredictorState *ps)
 
static void reset_predictor_group (PredictorState *ps, int group_num)
 
static void AAC_RENAME apply_prediction (AACDecContext *ac, SingleChannelElement *sce)
 Apply AAC-Main style frequency domain prediction.
 
static av_cold void AAC_RENAME aac_dsp_init (AACDecDSP *aac_dsp)
 

Macro Definition Documentation

◆ SET

#define SET ( member)
Value:
aac_dsp->member = AAC_RENAME(member)
#define AAC_RENAME(x)
Definition aac_defines.h:99

Referenced by aac_dsp_init().

Function Documentation

◆ dequant_scalefactors()

static void AAC_RENAME dequant_scalefactors ( SingleChannelElement * sce)
static

Convert integer scalefactors to the decoder's native expected scalefactor values.

Definition at line 41 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and dequant_scalefactors().

◆ apply_mid_side_stereo()

static void AAC_RENAME apply_mid_side_stereo ( AACDecContext * ac,
ChannelElement * cpe )
static

Mid/Side stereo decoding; reference: 4.6.8.1.3.

Definition at line 84 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and apply_mid_side_stereo().

◆ apply_intensity_stereo()

static void AAC_RENAME apply_intensity_stereo ( AACDecContext * ac,
ChannelElement * cpe,
int ms_present )
static

intensity stereo decoding; reference: 4.6.8.2.3

Parameters
ms_presentIndicates mid/side stereo presence. [0] mask is all 0s; [1] mask is decoded from bitstream; [2] mask is all 1s; [3] reserved for scalable AAC

Definition at line 120 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and apply_intensity_stereo().

◆ apply_tns()

static void AAC_RENAME apply_tns ( void * _coef_param,
TemporalNoiseShaping * tns,
IndividualChannelStream * ics,
int decode )
static

Decode Temporal Noise Shaping filter coefficients and apply all-pole filters; reference: 4.6.9.3.

Parameters
decode1 if tool is used normally, 0 if tool is used in LTP.
coefspectral coefficients

Definition at line 164 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), apply_ltp(), and apply_tns().

◆ windowing_and_mdct_ltp()

static void AAC_RENAME windowing_and_mdct_ltp ( AACDecContext * ac,
INTFLOAT * out,
INTFLOAT * in,
IndividualChannelStream * ics )
inlinestatic

Apply windowing and MDCT to obtain the spectral coefficient from the predicted sample by LTP.

Definition at line 225 of file aacdec_dsp_template.c.

Referenced by apply_ltp(), and windowing_and_mdct_ltp().

◆ apply_ltp()

static void AAC_RENAME apply_ltp ( AACDecContext * ac,
SingleChannelElement * sce )
static

Apply the long term prediction.

Definition at line 252 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and apply_ltp().

◆ update_ltp()

static void AAC_RENAME update_ltp ( AACDecContext * ac,
SingleChannelElement * sce )
static

Update the LTP buffer for next frame.

Definition at line 284 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and update_ltp().

◆ imdct_and_windowing()

static void AAC_RENAME imdct_and_windowing ( AACDecContext * ac,
SingleChannelElement * sce )
static

Conduct IMDCT and windowing.

Definition at line 325 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and imdct_and_windowing().

◆ imdct_and_windowing_768()

static void AAC_RENAME imdct_and_windowing_768 ( AACDecContext * ac,
SingleChannelElement * sce )
static

Conduct IMDCT and windowing for 768-point frames.

Definition at line 389 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and imdct_and_windowing_768().

◆ imdct_and_windowing_960()

static void AAC_RENAME imdct_and_windowing_960 ( AACDecContext * ac,
SingleChannelElement * sce )
static

Conduct IMDCT and windowing.

Definition at line 454 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and imdct_and_windowing_960().

◆ imdct_and_windowing_ld()

static void AAC_RENAME imdct_and_windowing_ld ( AACDecContext * ac,
SingleChannelElement * sce )
static

Definition at line 516 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and imdct_and_windowing_ld().

◆ imdct_and_windowing_eld()

static void AAC_RENAME imdct_and_windowing_eld ( AACDecContext * ac,
SingleChannelElement * sce )
static

Definition at line 541 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and imdct_and_windowing_eld().

◆ clip_output()

static void AAC_RENAME clip_output ( AACDecContext * ac,
ChannelElement * che,
int type,
int samples )
static

Definition at line 604 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and clip_output().

◆ reset_all_predictors()

static void reset_all_predictors ( PredictorState * ps)
inlinestatic

Definition at line 619 of file aacdec_dsp_template.c.

Referenced by apply_prediction().

◆ reset_predictor_group()

static void reset_predictor_group ( PredictorState * ps,
int group_num )
inlinestatic

Definition at line 626 of file aacdec_dsp_template.c.

Referenced by apply_prediction().

◆ apply_prediction()

static void AAC_RENAME apply_prediction ( AACDecContext * ac,
SingleChannelElement * sce )
static

Apply AAC-Main style frequency domain prediction.

Definition at line 636 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and apply_prediction().

◆ aac_dsp_init()

static av_cold void AAC_RENAME aac_dsp_init ( AACDecDSP * aac_dsp)
static

Definition at line 665 of file aacdec_dsp_template.c.

Referenced by aac_dsp_init(), and ff_aac_decode_init_float().