#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 COSTABLE | ( | size | ) | COSTABLE_CONST DECLARE_ALIGNED(16, FFTSample, ff_cos_##size)[size/2] |
| #define FF_FFT_PERM_DEFAULT 0 |
| #define FF_FFT_PERM_SWAP_LSBS 1 |
| #define FF_MDCT_PERM_INTERLEAVE 1 |
| #define FF_MDCT_PERM_NONE 0 |
| 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.
| 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 | ) |
| void ff_fft_init_arm | ( | FFTContext * | s | ) |
| void ff_fft_init_mmx | ( | FFTContext * | s | ) |
| void ff_imdct_calc_c | ( | FFTContext * | s, | |
| FFTSample * | output, | |||
| const FFTSample * | input | |||
| ) |
Compute inverse MDCT of size N = 2^nbits.
| 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.
| 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].
| 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.
| 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 | ) |
Definition at line 203 of file mdct.c.
Referenced by aac_decode_close(), aac_encode_end(), ac3_decode_end(), atrac1_decode_end(), atrac3_decode_close(), cook_decode_close(), dca_decode_end(), decode_end(), encode_end(), ff_aac_sbr_ctx_close(), ff_mdct_init(), ff_wma_end(), main(), mdct_end(), twin_decode_close(), vorbis_encode_close(), and vorbis_free().
| int ff_mdct_init | ( | FFTContext * | s, | |
| int | nbits, | |||
| int | inverse, | |||
| double | scale | |||
| ) |
init MDCT or IMDCT computation.
Definition at line 36 of file mdct.c.
Referenced by aac_decode_init(), aac_encode_init(), ac3_decode_init(), atrac1_decode_init(), create_vorbis_context(), dca_decode_init(), decode_init(), encode_init(), ff_aac_sbr_ctx_init(), init_atrac3_transforms(), init_cook_mlt(), init_mdct_win(), main(), mdct_init(), vorbis_parse_id_hdr(), and wma_decode_init().
| 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().
1.5.6