FFmpeg
Loading...
Searching...
No Matches
dct32_template.c File Reference
#include "dct32.h"
#include "mathops.h"
#include "libavutil/internal.h"

Go to the source code of this file.

Macros

#define SUINT   unsigned
 
#define SUINT32   uint32_t
 
#define dct32   ff_dct32_fixed
 
#define FIXHR(a)
 
#define MULH3(x, y, s)
 
#define INTFLOAT   int
 
#define SUINTFLOAT   SUINT
 
#define COS0_0   FIXHR(0.50060299823519630134/2)
 
#define COS0_1   FIXHR(0.50547095989754365998/2)
 
#define COS0_2   FIXHR(0.51544730992262454697/2)
 
#define COS0_3   FIXHR(0.53104259108978417447/2)
 
#define COS0_4   FIXHR(0.55310389603444452782/2)
 
#define COS0_5   FIXHR(0.58293496820613387367/2)
 
#define COS0_6   FIXHR(0.62250412303566481615/2)
 
#define COS0_7   FIXHR(0.67480834145500574602/2)
 
#define COS0_8   FIXHR(0.74453627100229844977/2)
 
#define COS0_9   FIXHR(0.83934964541552703873/2)
 
#define COS0_10   FIXHR(0.97256823786196069369/2)
 
#define COS0_11   FIXHR(1.16943993343288495515/4)
 
#define COS0_12   FIXHR(1.48416461631416627724/4)
 
#define COS0_13   FIXHR(2.05778100995341155085/8)
 
#define COS0_14   FIXHR(3.40760841846871878570/8)
 
#define COS0_15   FIXHR(10.19000812354805681150/32)
 
#define COS1_0   FIXHR(0.50241928618815570551/2)
 
#define COS1_1   FIXHR(0.52249861493968888062/2)
 
#define COS1_2   FIXHR(0.56694403481635770368/2)
 
#define COS1_3   FIXHR(0.64682178335999012954/2)
 
#define COS1_4   FIXHR(0.78815462345125022473/2)
 
#define COS1_5   FIXHR(1.06067768599034747134/4)
 
#define COS1_6   FIXHR(1.72244709823833392782/4)
 
#define COS1_7   FIXHR(5.10114861868916385802/16)
 
#define COS2_0   FIXHR(0.50979557910415916894/2)
 
#define COS2_1   FIXHR(0.60134488693504528054/2)
 
#define COS2_2   FIXHR(0.89997622313641570463/2)
 
#define COS2_3   FIXHR(2.56291544774150617881/8)
 
#define COS3_0   FIXHR(0.54119610014619698439/2)
 
#define COS3_1   FIXHR(1.30656296487637652785/4)
 
#define COS4_0   FIXHR(M_SQRT1_2/2)
 
#define BF(a, b, c, s)
 
#define BF0(a, b, c, s)
 
#define BF1(a, b, c, d)
 
#define BF2(a, b, c, d)
 
#define ADD(a, b)
 

Functions

void dct32 (INTFLOAT *out, const INTFLOAT *tab_arg)
 

Macro Definition Documentation

◆ SUINT

◆ SUINT32

#define SUINT32   uint32_t

Definition at line 31 of file dct32_template.c.

Referenced by filter0(), filter1(), and lpc_analyze_remodulate().

◆ dct32

#define dct32   ff_dct32_fixed

Definition at line 41 of file dct32_template.c.

Referenced by ff_mpa_synth_filter_TMPL().

◆ FIXHR

#define FIXHR ( a)
Value:
((int)((a) * (1LL<<32) + 0.5))
int a

Definition at line 42 of file dct32_template.c.

◆ MULH3

#define MULH3 ( x,
y,
s )
Value:
MULH((s)*(x), y)
#define s(width, name)
Definition cbs_vp9.c:198
#define MULH
Definition mathops.h:42

Definition at line 43 of file dct32_template.c.

Referenced by compute_imdct(), and imdct12().

◆ INTFLOAT

#define INTFLOAT   int

Definition at line 44 of file dct32_template.c.

Referenced by AAC_RENAME(), apply_intensity_stereo(), apply_ltp(), apply_mid_side_stereo(), apply_tns(), clear_less_significant_bits(), compute_antialias(), compute_imdct(), compute_stereo(), dct32(), decode_audio_block(), decode_cce(), decode_spectrum_and_dequant(), decorrelation(), dequant_scalefactors(), do_imdct(), ff_aac_sbr_apply(), ff_eac3_apply_spectral_extension(), ff_imdct36_blocks_TMPL(), ff_ps_apply(), hybrid2_re(), hybrid4_8_12_cx(), hybrid6_cx(), hybrid_analysis(), hybrid_synthesis(), imdct12(), imdct36(), imdct_and_windowing(), imdct_and_windowing_768(), imdct_and_windowing_960(), imdct_and_windowing_eld(), imdct_and_windowing_ld(), map_val_20_to_34(), map_val_34_to_20(), mpa_synth_init(), ps_add_squares_c(), ps_decorrelate_c(), ps_hybrid_analysis_c(), ps_hybrid_analysis_ileave_c(), ps_hybrid_synthesis_deint_c(), ps_mul_pair_single_c(), ps_stereo_interpolate_c(), ps_stereo_interpolate_ipdopd_c(), reorder_block(), sbr_env_estimate(), sbr_hf_apply_noise_0(), sbr_hf_apply_noise_1(), sbr_hf_apply_noise_2(), sbr_hf_apply_noise_3(), sbr_hf_gen(), sbr_lf_gen(), sbr_make_f_tablelim(), sbr_qmf_analysis(), sbr_qmf_deint_bfly_c(), sbr_qmf_synthesis(), sbr_sum64x5_c(), sbr_x_gen(), spx_coordinates(), stereo_processing(), test_add_squares(), test_autocorrelate(), test_hf_apply_noise(), test_hf_g_filt(), test_hf_gen(), test_hybrid_analysis(), test_hybrid_analysis_ileave(), test_hybrid_synthesis_deint(), test_mul_pair_single(), test_neg_odd_64(), test_qmf_deint_bfly(), test_qmf_deint_neg(), test_qmf_post_shuffle(), test_qmf_pre_shuffle(), test_stereo_interpolate(), test_sum64x5(), test_sum_square(), update_ltp(), and windowing_and_mdct_ltp().

◆ SUINTFLOAT

#define SUINTFLOAT   SUINT

Definition at line 45 of file dct32_template.c.

Referenced by compute_stereo(), dct32(), imdct12(), and imdct36().

◆ COS0_0

#define COS0_0   FIXHR(0.50060299823519630134/2)

Definition at line 53 of file dct32_template.c.

Referenced by dct32().

◆ COS0_1

#define COS0_1   FIXHR(0.50547095989754365998/2)

Definition at line 54 of file dct32_template.c.

Referenced by dct32().

◆ COS0_2

#define COS0_2   FIXHR(0.51544730992262454697/2)

Definition at line 55 of file dct32_template.c.

Referenced by dct32().

◆ COS0_3

#define COS0_3   FIXHR(0.53104259108978417447/2)

Definition at line 56 of file dct32_template.c.

Referenced by dct32().

◆ COS0_4

#define COS0_4   FIXHR(0.55310389603444452782/2)

Definition at line 57 of file dct32_template.c.

Referenced by dct32().

◆ COS0_5

#define COS0_5   FIXHR(0.58293496820613387367/2)

Definition at line 58 of file dct32_template.c.

Referenced by dct32().

◆ COS0_6

#define COS0_6   FIXHR(0.62250412303566481615/2)

Definition at line 59 of file dct32_template.c.

Referenced by dct32().

◆ COS0_7

#define COS0_7   FIXHR(0.67480834145500574602/2)

Definition at line 60 of file dct32_template.c.

Referenced by dct32().

◆ COS0_8

#define COS0_8   FIXHR(0.74453627100229844977/2)

Definition at line 61 of file dct32_template.c.

Referenced by dct32().

◆ COS0_9

#define COS0_9   FIXHR(0.83934964541552703873/2)

Definition at line 62 of file dct32_template.c.

Referenced by dct32().

◆ COS0_10

#define COS0_10   FIXHR(0.97256823786196069369/2)

Definition at line 63 of file dct32_template.c.

Referenced by dct32().

◆ COS0_11

#define COS0_11   FIXHR(1.16943993343288495515/4)

Definition at line 64 of file dct32_template.c.

Referenced by dct32().

◆ COS0_12

#define COS0_12   FIXHR(1.48416461631416627724/4)

Definition at line 65 of file dct32_template.c.

Referenced by dct32().

◆ COS0_13

#define COS0_13   FIXHR(2.05778100995341155085/8)

Definition at line 66 of file dct32_template.c.

Referenced by dct32().

◆ COS0_14

#define COS0_14   FIXHR(3.40760841846871878570/8)

Definition at line 67 of file dct32_template.c.

Referenced by dct32().

◆ COS0_15

#define COS0_15   FIXHR(10.19000812354805681150/32)

Definition at line 68 of file dct32_template.c.

Referenced by dct32().

◆ COS1_0

#define COS1_0   FIXHR(0.50241928618815570551/2)

Definition at line 70 of file dct32_template.c.

Referenced by dct32().

◆ COS1_1

#define COS1_1   FIXHR(0.52249861493968888062/2)

Definition at line 71 of file dct32_template.c.

Referenced by dct32().

◆ COS1_2

#define COS1_2   FIXHR(0.56694403481635770368/2)

Definition at line 72 of file dct32_template.c.

Referenced by dct32().

◆ COS1_3

#define COS1_3   FIXHR(0.64682178335999012954/2)

Definition at line 73 of file dct32_template.c.

Referenced by dct32().

◆ COS1_4

#define COS1_4   FIXHR(0.78815462345125022473/2)

Definition at line 74 of file dct32_template.c.

Referenced by dct32().

◆ COS1_5

#define COS1_5   FIXHR(1.06067768599034747134/4)

Definition at line 75 of file dct32_template.c.

Referenced by dct32().

◆ COS1_6

#define COS1_6   FIXHR(1.72244709823833392782/4)

Definition at line 76 of file dct32_template.c.

Referenced by dct32().

◆ COS1_7

#define COS1_7   FIXHR(5.10114861868916385802/16)

Definition at line 77 of file dct32_template.c.

Referenced by dct32().

◆ COS2_0

#define COS2_0   FIXHR(0.50979557910415916894/2)

Definition at line 79 of file dct32_template.c.

Referenced by dct32().

◆ COS2_1

#define COS2_1   FIXHR(0.60134488693504528054/2)

Definition at line 80 of file dct32_template.c.

Referenced by dct32().

◆ COS2_2

#define COS2_2   FIXHR(0.89997622313641570463/2)

Definition at line 81 of file dct32_template.c.

Referenced by dct32().

◆ COS2_3

#define COS2_3   FIXHR(2.56291544774150617881/8)

Definition at line 82 of file dct32_template.c.

Referenced by dct32().

◆ COS3_0

#define COS3_0   FIXHR(0.54119610014619698439/2)

Definition at line 84 of file dct32_template.c.

Referenced by dct32().

◆ COS3_1

#define COS3_1   FIXHR(1.30656296487637652785/4)

Definition at line 85 of file dct32_template.c.

Referenced by dct32().

◆ COS4_0

#define COS4_0   FIXHR(M_SQRT1_2/2)

Definition at line 87 of file dct32_template.c.

◆ BF

#define BF ( a,
b,
c,
s )
Value:
{\
tmp0 = val##a + val##b;\
tmp1 = val##a - val##b;\
val##a = tmp0;\
val##b = MULH3(tmp1, c, 1<<(s));\
}
static double val(void *priv, double ch)
Definition aeval.c:77
#define MULH3(x, y, s)
#define b
Definition input.c:43
static double c[64]

Definition at line 90 of file dct32_template.c.

Referenced by dct32(), ff_tx_fft2_ns(), ff_tx_fft4_ns(), ff_tx_fft8_ns(), fft3(), fft7(), and fft9().

◆ BF0

#define BF0 ( a,
b,
c,
s )
Value:
{\
tmp0 = tab[a] + tab[b];\
tmp1 = tab[a] - tab[b];\
val##a = tmp0;\
val##b = MULH3(tmp1, c, 1<<(s));\
}
static const struct twinvq_data tab

Definition at line 98 of file dct32_template.c.

Referenced by dct32().

◆ BF1

#define BF1 ( a,
b,
c,
d )
Value:
{\
BF(a, b, COS4_0, 1);\
BF(c, d,-COS4_0, 1);\
val##c += val##d;\
}
#define COS4_0

Definition at line 106 of file dct32_template.c.

Referenced by dct32().

◆ BF2

#define BF2 ( a,
b,
c,
d )
Value:
{\
BF(a, b, COS4_0, 1);\
BF(c, d,-COS4_0, 1);\
val##c += val##d;\
val##a += val##c;\
val##c += val##b;\
val##b += val##d;\
}

Definition at line 113 of file dct32_template.c.

Referenced by dct32().

◆ ADD

#define ADD ( a,
b )
Value:
val##a += val##b

Definition at line 123 of file dct32_template.c.

Referenced by checkasm_check_sw_ops(), and dct32().

Function Documentation

◆ dct32()

void dct32 ( INTFLOAT * out,
const INTFLOAT * tab_arg )

Definition at line 126 of file dct32_template.c.