[Liboil] DCT and MDCT functions in liboil

David Schleef ds at schleef.org
Thu Mar 27 16:05:32 PDT 2008

On Thu, Mar 27, 2008 at 06:15:39PM -0400, Steven G. Johnson wrote:
> Hi, I'm one of the authors of FFTW (www.fftw.org), and I was naturally 
> interested to see that you are planning to provide DCT and MDCT functions 
> in liboil.


> For the "imdct32" routine (really a DCT-II of size 32), I checked and our 
> generator produces C code that runs about 30-50% faster than your 
> lgpl/imdct32_f32.c routine (and both routines are hundreds of times faster 
> than your reference code dct/imdct32_f32.c) on my Intel Core Duo machine 
> with gcc.  See the attached file.

Comparing anything to liboil reference functions is uninteresting.
The reference code is there to provide 100% correct results, not to
be fast.  If only a reference function is provided, it probably isn't
used by any application.

Much of the API that you mention is a holdover from years ago, and is
best ignored.  Some of it is even deprecated.  Some of the theora and
vorbis related code (talk to them about the names of the transforms) might
be used in various experimental projects, but unlikely widespread.

Btw, whenever someone asks for FFT code in liboil, I say "Use FFTW".


More information about the Liboil mailing list