19 #ifndef AVCODEC_AVFFT_H 20 #define AVCODEC_AVFFT_H 35 typedef float FFTSample;
61 void av_fft_end(FFTContext *s);
63 FFTContext *av_mdct_init(
int nbits,
int inverse,
double scale);
64 void av_imdct_calc(FFTContext *s, FFTSample *output,
const FFTSample *input);
65 void av_imdct_half(FFTContext *s, FFTSample *output,
const FFTSample *input);
66 void av_mdct_calc(FFTContext *s, FFTSample *output,
const FFTSample *input);
67 void av_mdct_end(FFTContext *s);
71 enum RDFTransformType {
85 RDFTContext *
av_rdft_init(
int nbits,
enum RDFTransformType trans);
86 void av_rdft_calc(RDFTContext *s, FFTSample *data);
87 void av_rdft_end(RDFTContext *s);
93 enum DCTTransformType {
110 DCTContext *
av_dct_init(
int nbits,
enum DCTTransformType type);
111 void av_dct_calc(DCTContext *s, FFTSample *data);
112 void av_dct_end (DCTContext *s);
DCTContext * av_dct_init(int nbits, enum DCTTransformType type)
Set up DCT.
void av_fft_permute(FFTContext *s, FFTComplex *z)
Do the permutation needed BEFORE calling ff_fft_calc().
Definition: avfft.c:38
FFTContext * av_fft_init(int nbits, int inverse)
Set up a complex FFT.
Definition: avfft.c:28
RDFTContext * av_rdft_init(int nbits, enum RDFTransformType trans)
Set up a real FFT.
void av_fft_calc(FFTContext *s, FFTComplex *z)
Do a complex FFT with the parameters defined in av_fft_init().
Definition: avfft.c:43