All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Enumerations | Functions
fft.h File Reference
#include <stdint.h>
#include "config.h"
#include "libavutil/mem.h"
#include "avfft.h"

Go to the source code of this file.

Data Structures

struct  FFTDComplex
struct  FFTContext


#define FFT_FLOAT   1
#define FFT_FIXED_32   0
#define FFT_NAME(x)   x
#define COSTABLE(size)   COSTABLE_CONST DECLARE_ALIGNED(32, FFTSample, FFT_NAME(ff_cos_##size))[size/2]
#define ff_init_ff_cos_tabs   FFT_NAME(ff_init_ff_cos_tabs)
#define ff_fft_init   FFT_NAME(ff_fft_init)
#define ff_fft_end   FFT_NAME(ff_fft_end)
#define ff_mdct_init   FFT_NAME(ff_mdct_init)
#define ff_mdct_end   FFT_NAME(ff_mdct_end)


typedef float FFTDouble


enum  fft_permutation_type { FF_FFT_PERM_DEFAULT, FF_FFT_PERM_SWAP_LSBS, FF_FFT_PERM_AVX }
enum  mdct_permutation_type { FF_MDCT_PERM_NONE, FF_MDCT_PERM_INTERLEAVE }


 COSTABLE (1024)
 COSTABLE (2048)
 COSTABLE (4096)
 COSTABLE (8192)
 COSTABLE (16384)
 COSTABLE (32768)
 COSTABLE (65536)
 COSTABLE (131072)
COSTABLE_CONST FFTSample *const FFT_NAME (ff_cos_tabs)[18]
void ff_init_ff_cos_tabs (int index)
 Initialize the cosine table in ff_cos_tabs[index]. More...
int ff_fft_init (FFTContext *s, int nbits, int inverse)
 Set up a complex FFT. More...
void ff_fft_init_aarch64 (FFTContext *s)
void ff_fft_init_x86 (FFTContext *s)
void ff_fft_init_arm (FFTContext *s)
void ff_fft_init_mips (FFTContext *s)
 FFT transform. More...
void ff_fft_init_ppc (FFTContext *s)
void ff_fft_fixed_init_arm (FFTContext *s)
void ff_fft_end (FFTContext *s)
int ff_mdct_init (FFTContext *s, int nbits, int inverse, double scale)
 init MDCT or IMDCT computation. More...
void ff_mdct_end (FFTContext *s)

Macro Definition Documentation

#define FFT_FLOAT   1

Definition at line 26 of file fft.h.

#define FFT_FIXED_32   0

Definition at line 30 of file fft.h.

#define FFT_NAME (   x)    x

Definition at line 41 of file fft.h.


Definition at line 119 of file fft.h.

#define COSTABLE (   size)    COSTABLE_CONST DECLARE_ALIGNED(32, FFTSample, FFT_NAME(ff_cos_##size))[size/2]

Definition at line 122 of file fft.h.

#define ff_init_ff_cos_tabs   FFT_NAME(ff_init_ff_cos_tabs)

Definition at line 141 of file fft.h.

Referenced by ff_dct_init(), ff_fft_init_mips(), and ff_rdft_init().

#define ff_fft_init   FFT_NAME(ff_fft_init)
#define ff_fft_end   FFT_NAME(ff_fft_end)
#define ff_mdct_init   FFT_NAME(ff_mdct_init)
#define ff_mdct_end   FFT_NAME(ff_mdct_end)

Typedef Documentation

typedef float FFTDouble

Definition at line 43 of file fft.h.

Enumeration Type Documentation


Definition at line 77 of file fft.h.


Definition at line 83 of file fft.h.

Function Documentation

COSTABLE ( 16  )
COSTABLE ( 32  )
COSTABLE ( 64  )
COSTABLE ( 128  )
COSTABLE ( 256  )
COSTABLE ( 512  )
COSTABLE ( 1024  )
COSTABLE ( 2048  )
COSTABLE ( 4096  )
COSTABLE ( 8192  )
COSTABLE ( 16384  )
COSTABLE ( 32768  )
COSTABLE ( 65536  )
COSTABLE ( 131072  )
COSTABLE_CONST FFTSample* const FFT_NAME ( ff_cos_tabs  )
void ff_init_ff_cos_tabs ( int  index)

Initialize the cosine table in ff_cos_tabs[index].

indexindex in ff_cos_tabs array of the table to initialize

Definition at line 90 of file fft_template.c.

Referenced by ff_fft_init().

int ff_fft_init ( FFTContext s,
int  nbits,
int  inverse 

Set up a complex FFT.

nbitslog2 of the length of the input array
inverseif 0 perform the forward transform, if 1 perform the inverse

Definition at line 142 of file fft_template.c.

void ff_fft_init_aarch64 ( FFTContext s)

Definition at line 36 of file fft_init_aarch64.c.

Referenced by ff_fft_init().

void ff_fft_init_x86 ( FFTContext s)

Definition at line 27 of file fft_init.c.

Referenced by ff_fft_init().

void ff_fft_init_arm ( FFTContext s)

Definition at line 38 of file fft_init_arm.c.

Referenced by ff_fft_init().

void ff_fft_init_mips ( FFTContext s)

FFT transform.

Definition at line 501 of file fft_mips.c.

Referenced by ff_fft_init().

void ff_fft_init_ppc ( FFTContext s)

Definition at line 152 of file fft_init.c.

Referenced by ff_fft_init().

void ff_fft_fixed_init_arm ( FFTContext s)

Definition at line 32 of file fft_fixed_init_arm.c.

Referenced by ff_fft_init().

void ff_fft_end ( FFTContext s)

Definition at line 239 of file fft_template.c.

int ff_mdct_init ( FFTContext s,
int  nbits,
int  inverse,
double  scale 

init MDCT or IMDCT computation.

Definition at line 48 of file mdct_template.c.

void ff_mdct_end ( FFTContext s)

Definition at line 209 of file mdct_template.c.

Referenced by ff_mdct_init().