[Ffmpeg-devel] [RFC] fixed point mdct transform

Benjamin Larsson banan
Fri Nov 25 13:10:04 CET 2005

I did a fixed point mdct and was hoping to use it in ffmpeg for some of
the audio codecs. The code is located here:


The problem with this implementation is that it needs lots of fractional
bits to get good precision. In _kiss_fft_guts.h the FRACBITS define lets
you change the amount of fractional bits to use. The minimum amount of
bits for the random test table seams to be 12. Less then 12 gives more
then 1 bit difference compared to the reference calculation in some
cases (I consider that to much). The amount of fractional bits also
cause >32bit overflow when multiplying. My aim is to only use 32 bits to
aid embedded use, but I'm not sure how to do that. So does anyone have
any wise comments to share in this matter ? I guess the core problem is
how to do a fast precise fft transform with integer arithmetics without
using more then 32bits.

Benjamin Larsson

More information about the ffmpeg-devel mailing list