19 #ifndef AVUTIL_TX_PRIV_H 20 #define AVUTIL_TX_PRIV_H 30 #define TX_NAME(x) x ## _float 33 #elif defined(TX_DOUBLE) 34 #define TX_NAME(x) x ## _double 41 #if defined(TX_FLOAT) || defined(TX_DOUBLE) 42 #define BF(x, y, a, b) do { \ 47 #define CMUL(dre, dim, are, aim, bre, bim) do { \ 48 (dre) = (are) * (bre) - (aim) * (bim); \ 49 (dim) = (are) * (bim) + (aim) * (bre); \ 53 #define CMUL3(c, a, b) \ 54 CMUL((c).re, (c).im, (a).re, (a).im, (b).re, (b).im) 56 #define COSTABLE(size) \ 57 DECLARE_ALIGNED(32, FFTSample, TX_NAME(ff_cos_##size))[size/2] 86 if (inverse == !(i & m))
95 const void *scale, uint64_t
flags);
98 const void *scale, uint64_t
flags);
Memory handling functions.
Macro definitions for various function/variable attributes.
int ff_tx_gen_ptwo_revtab(AVTXContext *s)
int ff_tx_gen_compound_mapping(AVTXContext *s)
int ff_tx_init_mdct_fft_float(AVTXContext *s, av_tx_fn *tx, enum AVTXType type, int inv, int len, const void *scale, uint64_t flags)
#define i(width, name, range_min, range_max)
void(* av_tx_fn)(AVTXContext *s, void *out, void *in, ptrdiff_t stride)
Function pointer to a function to perform the transform.
simple assert() macros that are a bit more flexible than ISO C assert().
typedef void(APIENTRY *FF_PFNGLACTIVETEXTUREPROC)(GLenum texture)
int(* func)(AVBPrint *dst, const char *in, const char *arg)
#define flags(name, subs,...)
int ff_tx_init_mdct_fft_double(AVTXContext *s, av_tx_fn *tx, enum AVTXType type, int inv, int len, const void *scale, uint64_t flags)
static uint32_t inverse(uint32_t v)
find multiplicative inverse modulo 2 ^ 32
static int split_radix_permutation(int i, int n, int inverse)