# HG changeset patch # User vitor # Date 1269171071 0 # Node ID c4d18d452f82cd2a9e1aea2f478d57127ffa9cb0 # Parent e3b680f6c10605182eee9c0f6fd8b350061be4ed Call DCT by function pointer. Needed for any future ASM implementation and allows further cleanup. diff -r e3b680f6c106 -r c4d18d452f82 dct.c --- a/dct.c Sun Mar 21 11:28:38 2010 +0000 +++ b/dct.c Sun Mar 21 11:31:11 2010 +0000 @@ -105,7 +105,7 @@ void ff_dct_calc(DCTContext *s, FFTSample *data) { - ff_dct_calc_c(s, data); + s->dct_calc(s, data); } av_cold int ff_dct_init(DCTContext *s, int nbits, int inverse) @@ -130,6 +130,8 @@ for (i = 0; i < n/2; i++) s->csc2[i] = 0.5 / sin((M_PI / (2*n) * (2*i + 1))); + s->dct_calc = ff_dct_calc_c; + return 0; } diff -r e3b680f6c106 -r c4d18d452f82 fft.h --- a/fft.h Sun Mar 21 11:28:38 2010 +0000 +++ b/fft.h Sun Mar 21 11:31:11 2010 +0000 @@ -220,6 +220,7 @@ RDFTContext rdft; const float *costab; FFTSample *csc2; + void (*dct_calc)(struct DCTContext *s, FFTSample *data); }; /**