[FFmpeg-devel] [PATCH] split-radix FFT

Måns Rullgård mans
Mon Aug 4 21:47:04 CEST 2008


matthieu castet <castet.matthieu at free.fr> writes:

> M?ns Rullg?rd wrote:
>> Loren Merritt <lorenm at u.washington.edu> writes:
>> 
>>> $subject, vaguely based on djbfft.
>>> Changed from djb:
>>> * added simd.
>>> * removed the hand-scheduled pentium-pro code. gcc's output from
>>> simple C is better on all cpus I have access to.
>>> * removed the distinction between fft and ifft. they're just
>>> permutations of eachother, so the difference belongs in revtab[] and
>>> not in the code.
>>> * removed the distinction between pass() and pass_big(). C can always
>>> use the memory-efficient version, and simd never does because the
>>> shuffles are too costly.
>>> * made an entirely different pass_big(), to avoid store->load aliasing.
>> 
>> Any progress on this?  IMDCT is taking 84% time decoding Vorbis on
>> ARM, and SIMD-optimising the FFT in svn seems silly.
>> 
> Shouldn't fixed point stuff should help a lot on arm ?

That's a separate issue.  Fixed-point can be faster in many cases, but
many of the audio codecs are currently floating-point only.  A faster
FFT would be good for these, regardless of the speed of a hypothetical
fixed-point decoder.

-- 
M?ns Rullg?rd
mans at mansr.com




More information about the ffmpeg-devel mailing list