mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
For #1685: Cross build RTC with FFmpeg
This commit is contained in:
parent
1c75a270b3
commit
1e9de0e191
267 changed files with 12603 additions and 1451 deletions
|
@ -261,41 +261,17 @@ av_cold int ff_fft_init(FFTContext *s, int nbits, int inverse)
|
|||
if (s->fft_permutation == FF_FFT_PERM_AVX) {
|
||||
fft_perm_avx(s);
|
||||
} else {
|
||||
#define PROCESS_FFT_PERM_SWAP_LSBS(num) do {\
|
||||
for(i = 0; i < n; i++) {\
|
||||
int k;\
|
||||
j = i;\
|
||||
j = (j & ~3) | ((j >> 1) & 1) | ((j << 1) & 2);\
|
||||
k = -split_radix_permutation(i, n, s->inverse) & (n - 1);\
|
||||
s->revtab##num[k] = j;\
|
||||
} \
|
||||
} while(0);
|
||||
|
||||
#define PROCESS_FFT_PERM_DEFAULT(num) do {\
|
||||
for(i = 0; i < n; i++) {\
|
||||
int k;\
|
||||
j = i;\
|
||||
k = -split_radix_permutation(i, n, s->inverse) & (n - 1);\
|
||||
s->revtab##num[k] = j;\
|
||||
} \
|
||||
} while(0);
|
||||
|
||||
#define SPLIT_RADIX_PERMUTATION(num) do { \
|
||||
if (s->fft_permutation == FF_FFT_PERM_SWAP_LSBS) {\
|
||||
PROCESS_FFT_PERM_SWAP_LSBS(num) \
|
||||
} else {\
|
||||
PROCESS_FFT_PERM_DEFAULT(num) \
|
||||
}\
|
||||
} while(0);
|
||||
|
||||
if (s->revtab)
|
||||
SPLIT_RADIX_PERMUTATION()
|
||||
if (s->revtab32)
|
||||
SPLIT_RADIX_PERMUTATION(32)
|
||||
|
||||
#undef PROCESS_FFT_PERM_DEFAULT
|
||||
#undef PROCESS_FFT_PERM_SWAP_LSBS
|
||||
#undef SPLIT_RADIX_PERMUTATION
|
||||
for(i=0; i<n; i++) {
|
||||
int k;
|
||||
j = i;
|
||||
if (s->fft_permutation == FF_FFT_PERM_SWAP_LSBS)
|
||||
j = (j&~3) | ((j>>1)&1) | ((j<<1)&2);
|
||||
k = -split_radix_permutation(i, n, s->inverse) & (n-1);
|
||||
if (s->revtab)
|
||||
s->revtab[k] = j;
|
||||
if (s->revtab32)
|
||||
s->revtab32[k] = j;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue