|
|
|
@ -166,7 +166,7 @@ av_cold int ff_fft_init(FFTContext *s, int nbits, int inverse) |
|
|
|
|
#if FFT_FIXED_32 |
|
|
|
|
{ |
|
|
|
|
int n=0; |
|
|
|
|
ff_fft_lut_init(fft_offsets_lut, 0, 1 << 16, &n); |
|
|
|
|
ff_fft_lut_init(ff_fft_offsets_lut, 0, 1 << 16, &n); |
|
|
|
|
} |
|
|
|
|
#else /* FFT_FIXED_32 */ |
|
|
|
|
#if FFT_FLOAT |
|
|
|
@ -236,7 +236,7 @@ static void fft_calc_c(FFTContext *s, FFTComplex *z) { |
|
|
|
|
num_transforms = (0x2aab >> (16 - s->nbits)) | 1; |
|
|
|
|
|
|
|
|
|
for (n=0; n<num_transforms; n++){ |
|
|
|
|
offset = fft_offsets_lut[n] << 2; |
|
|
|
|
offset = ff_fft_offsets_lut[n] << 2; |
|
|
|
|
tmpz = z + offset; |
|
|
|
|
|
|
|
|
|
tmp1 = tmpz[0].re + tmpz[1].re; |
|
|
|
@ -264,7 +264,7 @@ static void fft_calc_c(FFTContext *s, FFTComplex *z) { |
|
|
|
|
num_transforms = (num_transforms >> 1) | 1; |
|
|
|
|
|
|
|
|
|
for (n=0; n<num_transforms; n++){ |
|
|
|
|
offset = fft_offsets_lut[n] << 3; |
|
|
|
|
offset = ff_fft_offsets_lut[n] << 3; |
|
|
|
|
tmpz = z + offset; |
|
|
|
|
|
|
|
|
|
tmp1 = tmpz[4].re + tmpz[5].re; |
|
|
|
@ -322,7 +322,7 @@ static void fft_calc_c(FFTContext *s, FFTComplex *z) { |
|
|
|
|
num_transforms = (num_transforms >> 1) | 1; |
|
|
|
|
|
|
|
|
|
for (n=0; n<num_transforms; n++){ |
|
|
|
|
offset = fft_offsets_lut[n] << nbits; |
|
|
|
|
offset = ff_fft_offsets_lut[n] << nbits; |
|
|
|
|
tmpz = z + offset; |
|
|
|
|
|
|
|
|
|
tmp5 = tmpz[ n2].re + tmpz[n34].re; |
|
|
|
@ -339,8 +339,8 @@ static void fft_calc_c(FFTContext *s, FFTComplex *z) { |
|
|
|
|
tmpz[n34].im = tmpz[n4].im + tmp1; |
|
|
|
|
tmpz[ n4].im = tmpz[n4].im - tmp1; |
|
|
|
|
|
|
|
|
|
w_re_ptr = w_tab_sr + step; |
|
|
|
|
w_im_ptr = w_tab_sr + MAX_FFT_SIZE/(4*16) - step; |
|
|
|
|
w_re_ptr = ff_w_tab_sr + step; |
|
|
|
|
w_im_ptr = ff_w_tab_sr + MAX_FFT_SIZE/(4*16) - step; |
|
|
|
|
|
|
|
|
|
for (i=1; i<n4; i++){ |
|
|
|
|
w_re = w_re_ptr[0]; |
|
|
|
|