FFmpeg
Macros | Enumerations | Functions | Variables
aacps_common.c File Reference
#include <stdint.h>
#include "libavutil/common.h"
#include "libavutil/thread.h"
#include "aacps.h"
#include "get_bits.h"
#include "aacpsdata.c"

Go to the source code of this file.

Macros

#define READ_PAR_DATA(PAR, OFFSET, MASK, ERR_CONDITION, NB_BITS, MAX_DEPTH)
 
#define PS_INIT_VLC_STATIC(num, nb_bits, size)
 
#define PS_VLC_ROW(name)   { name ## _codes, name ## _bits, sizeof(name ## _codes), sizeof(name ## _codes[0]) }
 

Enumerations

enum  {
  huff_iid_df1, huff_iid_dt1, huff_iid_df0, huff_iid_dt0,
  huff_icc_df, huff_icc_dt, huff_ipd_df, huff_ipd_dt,
  huff_opd_df, huff_opd_dt
}
 

Functions

static int read_iid_data (AVCodecContext *avctx, GetBitContext *gb, PSCommonContext *ps, int8_t(*iid)[34], int table_idx, int e, int dt)
 
static int read_icc_data (AVCodecContext *avctx, GetBitContext *gb, PSCommonContext *ps, int8_t(*icc)[34], int table_idx, int e, int dt)
 
static int read_ipdopd_data (AVCodecContext *avctx, GetBitContext *gb, PSCommonContext *ps, int8_t(*ipdopd)[34], int table_idx, int e, int dt)
 
static int ps_read_extension_data (GetBitContext *gb, PSCommonContext *ps, int ps_extension_id)
 
int ff_ps_read_data (AVCodecContext *avctx, GetBitContext *gb_host, PSCommonContext *ps, int bits_left)
 
static av_cold void ps_init_common (void)
 
av_cold void ff_ps_init_common (void)
 

Variables

static const int8_t num_env_tab [2][4]
 
static const int8_t nr_iidicc_par_tab []
 
static const int8_t nr_iidopd_par_tab []
 
static const int huff_iid []
 
static VLC vlc_ps [10]
 

Macro Definition Documentation

◆ READ_PAR_DATA

#define READ_PAR_DATA (   PAR,
  OFFSET,
  MASK,
  ERR_CONDITION,
  NB_BITS,
  MAX_DEPTH 
)

Definition at line 64 of file aacps_common.c.

◆ PS_INIT_VLC_STATIC

#define PS_INIT_VLC_STATIC (   num,
  nb_bits,
  size 
)
Value:
INIT_VLC_STATIC(&vlc_ps[num], nb_bits, ps_tmp[num].table_size / ps_tmp[num].elem_size, \
ps_tmp[num].ps_bits, 1, 1, \
ps_tmp[num].ps_codes, ps_tmp[num].elem_size, ps_tmp[num].elem_size, \
size);

Definition at line 281 of file aacps_common.c.

◆ PS_VLC_ROW

#define PS_VLC_ROW (   name)    { name ## _codes, name ## _bits, sizeof(name ## _codes), sizeof(name ## _codes[0]) }

Definition at line 287 of file aacps_common.c.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
huff_iid_df1 
huff_iid_dt1 
huff_iid_df0 
huff_iid_dt0 
huff_icc_df 
huff_icc_dt 
huff_ipd_df 
huff_ipd_dt 
huff_opd_df 
huff_opd_dt 

Definition at line 42 of file aacps_common.c.

Function Documentation

◆ read_iid_data()

static int read_iid_data ( AVCodecContext avctx,
GetBitContext gb,
PSCommonContext ps,
int8_t(*)  iid[34],
int  table_idx,
int  e,
int  dt 
)
static
  • Read Inter-channel Intensity Difference/Inter-Channel Coherence/ * Inter-channel Phase Difference/Overall Phase Difference parameters from the * bitstream. * *
    Parameters
    avctxcontains the current codec context *
    gbpointer to the input bitstream *
    pspointer to the Parametric Stereo context *
    iidpointer to the parameter to be read *
    eenvelope to decode *
    dt1: time delta-coded, 0: frequency delta-coded

Definition at line 97 of file aacps_common.c.

◆ read_icc_data()

static int read_icc_data ( AVCodecContext avctx,
GetBitContext gb,
PSCommonContext ps,
int8_t(*)  icc[34],
int  table_idx,
int  e,
int  dt 
)
static
  • Read Inter-channel Intensity Difference/Inter-Channel Coherence/ * Inter-channel Phase Difference/Overall Phase Difference parameters from the * bitstream. * *
    Parameters
    avctxcontains the current codec context *
    gbpointer to the input bitstream *
    pspointer to the Parametric Stereo context *
    iccpointer to the parameter to be read *
    eenvelope to decode *
    dt1: time delta-coded, 0: frequency delta-coded

Definition at line 98 of file aacps_common.c.

◆ read_ipdopd_data()

static int read_ipdopd_data ( AVCodecContext avctx,
GetBitContext gb,
PSCommonContext ps,
int8_t(*)  ipdopd[34],
int  table_idx,
int  e,
int  dt 
)
static
  • Read Inter-channel Intensity Difference/Inter-Channel Coherence/ * Inter-channel Phase Difference/Overall Phase Difference parameters from the * bitstream. * *
    Parameters
    avctxcontains the current codec context *
    gbpointer to the input bitstream *
    pspointer to the Parametric Stereo context *
    ipdopdpointer to the parameter to be read *
    eenvelope to decode *
    dt1: time delta-coded, 0: frequency delta-coded

Definition at line 99 of file aacps_common.c.

Referenced by ff_ps_read_data().

◆ ps_read_extension_data()

static int ps_read_extension_data ( GetBitContext gb,
PSCommonContext ps,
int  ps_extension_id 
)
static

Definition at line 101 of file aacps_common.c.

◆ ff_ps_read_data()

int ff_ps_read_data ( AVCodecContext avctx,
GetBitContext gb_host,
PSCommonContext ps,
int  bits_left 
)

Definition at line 123 of file aacps_common.c.

Referenced by read_sbr_extension().

◆ ps_init_common()

static av_cold void ps_init_common ( void  )
static

Definition at line 290 of file aacps_common.c.

◆ ff_ps_init_common()

av_cold void ff_ps_init_common ( void  )

Definition at line 321 of file aacps_common.c.

Referenced by ff_ps_init().

Variable Documentation

◆ num_env_tab

const int8_t num_env_tab[2][4]
static
Initial value:
= {
{ 0, 1, 2, 4, },
{ 1, 2, 3, 4, },
}

Definition at line 29 of file aacps_common.c.

◆ nr_iidicc_par_tab

const int8_t nr_iidicc_par_tab[]
static
Initial value:
= {
10, 20, 34, 10, 20, 34,
}

Definition at line 34 of file aacps_common.c.

◆ nr_iidopd_par_tab

const int8_t nr_iidopd_par_tab[]
static
Initial value:
= {
5, 11, 17, 5, 11, 17,
}

Definition at line 38 of file aacps_common.c.

◆ huff_iid

const int huff_iid[]
static
Initial value:

Definition at line 55 of file aacps_common.c.

◆ vlc_ps

VLC vlc_ps[10]
static

Definition at line 62 of file aacps_common.c.

INIT_VLC_STATIC
#define INIT_VLC_STATIC(vlc, bits, a, b, c, d, e, f, g, static_size)
Definition: vlc.h:120
huff_iid_df1
@ huff_iid_df1
Definition: aacps_common.c:43
huff_iid_dt0
@ huff_iid_dt0
Definition: aacps_common.c:46
huff_iid_dt1
@ huff_iid_dt1
Definition: aacps_common.c:44
size
int size
Definition: twinvq_data.h:10344
huff_iid_df0
@ huff_iid_df0
Definition: aacps_common.c:45
vlc_ps
static VLC vlc_ps[10]
Definition: aacps_common.c:62