libavcodec/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  FFTContext

Defines

#define FF_FFT_PERM_DEFAULT   0
#define FF_FFT_PERM_SWAP_LSBS   1
#define FF_MDCT_PERM_NONE   0
#define FF_MDCT_PERM_INTERLEAVE   1
#define COSTABLE_CONST
#define COSTABLE(size)   COSTABLE_CONST DECLARE_ALIGNED(16, FFTSample, ff_cos_##size)[size/2]

Functions

 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)
void ff_init_ff_cos_tabs (int index)
 Initialize the cosine table in ff_cos_tabs[index].
int ff_fft_init (FFTContext *s, int nbits, int inverse)
 Set up a complex FFT.
void ff_fft_init_altivec (FFTContext *s)
void ff_fft_init_mmx (FFTContext *s)
void ff_fft_init_arm (FFTContext *s)
void ff_dct_init_mmx (DCTContext *s)
void ff_fft_end (FFTContext *s)
int ff_mdct_init (FFTContext *s, int nbits, int inverse, double scale)
 init MDCT or IMDCT computation.
void ff_imdct_calc_c (FFTContext *s, FFTSample *output, const FFTSample *input)
 Compute inverse MDCT of size N = 2^nbits.
void ff_imdct_half_c (FFTContext *s, FFTSample *output, const FFTSample *input)
 Compute the middle half of the inverse MDCT of size N = 2^nbits, thus excluding the parts that can be derived by symmetry.
void ff_mdct_calc_c (FFTContext *s, FFTSample *output, const FFTSample *input)
 Compute MDCT of size N = 2^nbits.
void ff_mdct_end (FFTContext *s)

Variables

COSTABLE_CONST FFTSample *const ff_cos_tabs [17]


Define Documentation

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

Definition at line 68 of file fft.h.

#define COSTABLE_CONST

Definition at line 65 of file fft.h.

#define FF_FFT_PERM_DEFAULT   0

Definition at line 55 of file fft.h.

Referenced by ff_fft_init().

#define FF_FFT_PERM_SWAP_LSBS   1

Definition at line 56 of file fft.h.

Referenced by ff_fft_init(), and ff_fft_init_mmx().

#define FF_MDCT_PERM_INTERLEAVE   1

Definition at line 59 of file fft.h.

Referenced by ff_fft_init_arm(), and ff_mdct_init().

#define FF_MDCT_PERM_NONE   0

Definition at line 58 of file fft.h.

Referenced by ff_mdct_init().


Function Documentation

COSTABLE ( 65536   ) 

COSTABLE ( 32768   ) 

COSTABLE ( 16384   ) 

COSTABLE ( 8192   ) 

COSTABLE ( 4096   ) 

COSTABLE ( 2048   ) 

COSTABLE ( 1024   ) 

COSTABLE ( 512   ) 

COSTABLE ( 256   ) 

COSTABLE ( 128   ) 

COSTABLE ( 64   ) 

COSTABLE ( 32   ) 

COSTABLE ( 16   ) 

void ff_dct_init_mmx ( DCTContext s  ) 

Referenced by ff_dct_init().

void ff_fft_end ( FFTContext s  ) 

Definition at line 141 of file fft.c.

Referenced by av_fft_end(), ff_mdct_end(), ff_rdft_end(), imc_decode_close(), and main().

int ff_fft_init ( FFTContext s,
int  nbits,
int  inverse 
)

Set up a complex FFT.

Parameters:
nbits log2 of the length of the input array
inverse if 0 perform the forward transform, if 1 perform the inverse

Definition at line 84 of file fft.c.

Referenced by av_fft_init(), ff_mdct_init(), ff_rdft_init(), imc_decode_init(), and main().

void ff_fft_init_altivec ( FFTContext s  ) 

Definition at line 140 of file fft_altivec.c.

Referenced by ff_fft_init().

void ff_fft_init_arm ( FFTContext s  ) 

Definition at line 40 of file fft_init_arm.c.

Referenced by ff_fft_init().

void ff_fft_init_mmx ( FFTContext s  ) 

Definition at line 24 of file fft.c.

Referenced by ff_fft_init().

void ff_imdct_calc_c ( FFTContext s,
FFTSample output,
const FFTSample input 
)

Compute inverse MDCT of size N = 2^nbits.

Parameters:
output N samples
input N/2 samples

Definition at line 141 of file mdct.c.

Referenced by ff_fft_init().

void ff_imdct_half_c ( FFTContext s,
FFTSample output,
const FFTSample input 
)

Compute the middle half of the inverse MDCT of size N = 2^nbits, thus excluding the parts that can be derived by symmetry.

Parameters:
output N/2 samples
input N/2 samples

Definition at line 99 of file mdct.c.

Referenced by ff_fft_init(), and ff_imdct_calc_c().

void ff_init_ff_cos_tabs ( int  index  ) 

Initialize the cosine table in ff_cos_tabs[index].

Parameters:
index index in ff_cos_tabs array of the table to initialize

Definition at line 70 of file fft.c.

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

void ff_mdct_calc_c ( FFTContext s,
FFTSample out,
const FFTSample input 
)

Compute MDCT of size N = 2^nbits.

Parameters:
input N samples
out N/2 samples

Definition at line 161 of file mdct.c.

Referenced by ff_fft_init().

void ff_mdct_end ( FFTContext s  ) 

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


Variable Documentation

COSTABLE_CONST FFTSample* const ff_cos_tabs[17]

Definition at line 50 of file fft.c.

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


Generated on Wed Feb 8 03:03:48 2012 for FFmpeg by  doxygen 1.5.6