Originally committed as revision 2882 to svn://svn.ffmpeg.org/ffmpeg/trunktags/v0.5
@@ -508,17 +508,17 @@ typedef struct FFTContext { | |||
void (*fft_calc)(struct FFTContext *s, FFTComplex *z); | |||
} FFTContext; | |||
int fft_init(FFTContext *s, int nbits, int inverse); | |||
void fft_permute(FFTContext *s, FFTComplex *z); | |||
void fft_calc_c(FFTContext *s, FFTComplex *z); | |||
void fft_calc_sse(FFTContext *s, FFTComplex *z); | |||
void fft_calc_altivec(FFTContext *s, FFTComplex *z); | |||
int ff_fft_init(FFTContext *s, int nbits, int inverse); | |||
void ff_fft_permute(FFTContext *s, FFTComplex *z); | |||
void ff_fft_calc_c(FFTContext *s, FFTComplex *z); | |||
void ff_fft_calc_sse(FFTContext *s, FFTComplex *z); | |||
void ff_fft_calc_altivec(FFTContext *s, FFTComplex *z); | |||
static inline void fft_calc(FFTContext *s, FFTComplex *z) | |||
static inline void ff_fft_calc(FFTContext *s, FFTComplex *z) | |||
{ | |||
s->fft_calc(s, z); | |||
} | |||
void fft_end(FFTContext *s); | |||
void ff_fft_end(FFTContext *s); | |||
/* MDCT computation */ | |||
@@ -198,7 +198,7 @@ int main(int argc, char **argv) | |||
printf("IFFT"); | |||
else | |||
printf("FFT"); | |||
fft_init(s, fft_nbits, do_inverse); | |||
ff_fft_init(s, fft_nbits, do_inverse); | |||
fft_ref_init(fft_nbits, do_inverse); | |||
} | |||
printf(" %d test\n", fft_size); | |||
@@ -227,8 +227,8 @@ int main(int argc, char **argv) | |||
} | |||
} else { | |||
memcpy(tab, tab1, fft_size * sizeof(FFTComplex)); | |||
fft_permute(s, tab); | |||
fft_calc(s, tab); | |||
ff_fft_permute(s, tab); | |||
ff_fft_calc(s, tab); | |||
fft_ref(tab_ref, tab1, fft_nbits); | |||
check_diff((float *)tab_ref, (float *)tab, fft_size * 2); | |||
@@ -254,7 +254,7 @@ int main(int argc, char **argv) | |||
} | |||
} else { | |||
memcpy(tab, tab1, fft_size * sizeof(FFTComplex)); | |||
fft_calc(s, tab); | |||
ff_fft_calc(s, tab); | |||
} | |||
} | |||
duration = gettime() - time_start; | |||
@@ -271,7 +271,7 @@ int main(int argc, char **argv) | |||
if (do_mdct) { | |||
ff_mdct_end(m); | |||
} else { | |||
fft_end(s); | |||
ff_fft_end(s); | |||
} | |||
return 0; | |||
} |
@@ -28,7 +28,7 @@ | |||
* The size of the FFT is 2^nbits. If inverse is TRUE, inverse FFT is | |||
* done | |||
*/ | |||
int fft_init(FFTContext *s, int nbits, int inverse) | |||
int ff_fft_init(FFTContext *s, int nbits, int inverse) | |||
{ | |||
int i, j, m, n; | |||
float alpha, c1, s1, s2; | |||
@@ -53,7 +53,7 @@ int fft_init(FFTContext *s, int nbits, int inverse) | |||
s->exptab[i].re = c1; | |||
s->exptab[i].im = s1; | |||
} | |||
s->fft_calc = fft_calc_c; | |||
s->fft_calc = ff_fft_calc_c; | |||
s->exptab1 = NULL; | |||
/* compute constant table for HAVE_SSE version */ | |||
@@ -94,9 +94,9 @@ int fft_init(FFTContext *s, int nbits, int inverse) | |||
} while (nblocks != 0); | |||
av_freep(&s->exptab); | |||
#if defined(HAVE_MMX) | |||
s->fft_calc = fft_calc_sse; | |||
s->fft_calc = ff_fft_calc_sse; | |||
#else | |||
s->fft_calc = fft_calc_altivec; | |||
s->fft_calc = ff_fft_calc_altivec; | |||
#endif | |||
} | |||
} | |||
@@ -142,11 +142,11 @@ int fft_init(FFTContext *s, int nbits, int inverse) | |||
} | |||
/** | |||
* Do a complex FFT with the parameters defined in fft_init(). The | |||
* Do a complex FFT with the parameters defined in ff_fft_init(). The | |||
* input data must be permuted before with s->revtab table. No | |||
* 1.0/sqrt(n) normalization is done. | |||
*/ | |||
void fft_calc_c(FFTContext *s, FFTComplex *z) | |||
void ff_fft_calc_c(FFTContext *s, FFTComplex *z) | |||
{ | |||
int ln = s->nbits; | |||
int j, np, np2; | |||
@@ -221,9 +221,9 @@ void fft_calc_c(FFTContext *s, FFTComplex *z) | |||
} | |||
/** | |||
* Do the permutation needed BEFORE calling fft_calc() | |||
* Do the permutation needed BEFORE calling ff_fft_calc() | |||
*/ | |||
void fft_permute(FFTContext *s, FFTComplex *z) | |||
void ff_fft_permute(FFTContext *s, FFTComplex *z) | |||
{ | |||
int j, k, np; | |||
FFTComplex tmp; | |||
@@ -241,7 +241,7 @@ void fft_permute(FFTContext *s, FFTComplex *z) | |||
} | |||
} | |||
void fft_end(FFTContext *s) | |||
void ff_fft_end(FFTContext *s) | |||
{ | |||
av_freep(&s->revtab); | |||
av_freep(&s->exptab); | |||
@@ -42,7 +42,7 @@ static void print_v4sf(const char *str, __m128 a) | |||
#endif | |||
/* XXX: handle reverse case */ | |||
void fft_calc_sse(FFTContext *s, FFTComplex *z) | |||
void ff_fft_calc_sse(FFTContext *s, FFTComplex *z) | |||
{ | |||
int ln = s->nbits; | |||
int j, np, np2; | |||
@@ -48,7 +48,7 @@ int ff_mdct_init(MDCTContext *s, int nbits, int inverse) | |||
s->tcos[i] = -cos(alpha); | |||
s->tsin[i] = -sin(alpha); | |||
} | |||
if (fft_init(&s->fft, s->nbits - 2, inverse) < 0) | |||
if (ff_fft_init(&s->fft, s->nbits - 2, inverse) < 0) | |||
goto fail; | |||
return 0; | |||
fail: | |||
@@ -98,7 +98,7 @@ void ff_imdct_calc(MDCTContext *s, FFTSample *output, | |||
in1 += 2; | |||
in2 -= 2; | |||
} | |||
fft_calc(&s->fft, z); | |||
ff_fft_calc(&s->fft, z); | |||
/* post rotation + reordering */ | |||
/* XXX: optimize */ | |||
@@ -155,7 +155,7 @@ void ff_mdct_calc(MDCTContext *s, FFTSample *out, | |||
CMUL(x[j].re, x[j].im, re, im, -tcos[n8 + i], tsin[n8 + i]); | |||
} | |||
fft_calc(&s->fft, x); | |||
ff_fft_calc(&s->fft, x); | |||
/* post rotation */ | |||
for(i=0;i<n4;i++) { | |||
@@ -171,5 +171,5 @@ void ff_mdct_end(MDCTContext *s) | |||
{ | |||
av_freep(&s->tcos); | |||
av_freep(&s->tsin); | |||
fft_end(&s->fft); | |||
ff_fft_end(&s->fft); | |||
} |
@@ -46,7 +46,7 @@ int mm_support(void) | |||
unsigned long long perfdata[POWERPC_NUM_PMC_ENABLED][powerpc_perf_total][powerpc_data_total]; | |||
/* list below must match enum in dsputil_ppc.h */ | |||
static unsigned char* perfname[] = { | |||
"fft_calc_altivec", | |||
"ff_fft_calc_altivec", | |||
"gmc1_altivec", | |||
"dct_unquantize_h263_altivec", | |||
"fdct_altivec", | |||
@@ -50,7 +50,7 @@ | |||
/** | |||
* Do a complex FFT with the parameters defined in fft_init(). The | |||
* Do a complex FFT with the parameters defined in ff_fft_init(). The | |||
* input data must be permuted before with s->revtab table. No | |||
* 1.0/sqrt(n) normalization is done. | |||
* AltiVec-enabled | |||
@@ -60,7 +60,7 @@ | |||
* that successive MUL + ADD/SUB have been merged into | |||
* fused multiply-add ('vec_madd' in altivec) | |||
*/ | |||
void fft_calc_altivec(FFTContext *s, FFTComplex *z) | |||
void ff_fft_calc_altivec(FFTContext *s, FFTComplex *z) | |||
{ | |||
POWERPC_PERF_DECLARE(altivec_fft_num, s->nbits >= 6); | |||
#ifdef ALTIVEC_USE_REFERENCE_C_CODE | |||