libavcodec/avfft.c File Reference

#include "libavutil/mem.h"
#include "avfft.h"
#include "fft.h"
#include "rdft.h"
#include "dct.h"

Go to the source code of this file.

Functions

FFTContextav_fft_init (int nbits, int inverse)
 Set up a complex FFT.
void av_fft_permute (FFTContext *s, FFTComplex *z)
 Do the permutation needed BEFORE calling ff_fft_calc().
void av_fft_calc (FFTContext *s, FFTComplex *z)
 Do a complex FFT with the parameters defined in av_fft_init().
void av_fft_end (FFTContext *s)
FFTContextav_mdct_init (int nbits, int inverse, double scale)
void av_imdct_calc (FFTContext *s, FFTSample *output, const FFTSample *input)
void av_imdct_half (FFTContext *s, FFTSample *output, const FFTSample *input)
void av_mdct_calc (FFTContext *s, FFTSample *output, const FFTSample *input)
void av_mdct_end (FFTContext *s)
RDFTContextav_rdft_init (int nbits, enum RDFTransformType trans)
 Set up a real FFT.
void av_rdft_calc (RDFTContext *s, FFTSample *data)
void av_rdft_end (RDFTContext *s)
DCTContextav_dct_init (int nbits, enum DCTTransformType inverse)
 Set up DCT.
void av_dct_calc (DCTContext *s, FFTSample *data)
void av_dct_end (DCTContext *s)

Function Documentation

void av_dct_calc ( DCTContext s,
FFTSample data 
)

Definition at line 131 of file avfft.c.

void av_dct_end ( DCTContext s  ) 

Definition at line 136 of file avfft.c.

DCTContext* av_dct_init ( int  nbits,
enum DCTTransformType  type 
)

Set up DCT.

Parameters:
nbits size of the input array: (1 << nbits) for DCT-II, DCT-III and DST-I (1 << nbits) + 1 for DCT-I
Note:
the first element of the input of DST-I is ignored

Definition at line 121 of file avfft.c.

void av_fft_calc ( FFTContext s,
FFTComplex z 
)

Do a complex FFT with the parameters defined in av_fft_init().

The input data must be permuted before. No 1.0/sqrt(n) normalization is done.

Definition at line 42 of file avfft.c.

void av_fft_end ( FFTContext s  ) 

Definition at line 47 of file avfft.c.

FFTContext* av_fft_init ( 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 27 of file avfft.c.

void av_fft_permute ( FFTContext s,
FFTComplex z 
)

Do the permutation needed BEFORE calling ff_fft_calc().

Definition at line 37 of file avfft.c.

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

Definition at line 67 of file avfft.c.

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

Definition at line 72 of file avfft.c.

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

Definition at line 77 of file avfft.c.

void av_mdct_end ( FFTContext s  ) 

Definition at line 82 of file avfft.c.

FFTContext* av_mdct_init ( int  nbits,
int  inverse,
double  scale 
)

Definition at line 57 of file avfft.c.

void av_rdft_calc ( RDFTContext s,
FFTSample data 
)

Definition at line 104 of file avfft.c.

Referenced by video_audio_display().

void av_rdft_end ( RDFTContext s  ) 

Definition at line 109 of file avfft.c.

Referenced by stream_component_close(), and video_audio_display().

RDFTContext* av_rdft_init ( int  nbits,
enum RDFTransformType  trans 
)

Set up a real FFT.

Parameters:
nbits log2 of the length of the input array
trans the type of transform

Definition at line 94 of file avfft.c.

Referenced by video_audio_display().