Mon Nov 3 13:03:41 PST 2008
store the tables. I can spare flash space, though.
I wonder how much of an improvement this will have on a 32 bit CPU. If I
had an all-C implementation that wouldn't be too hard to test.
Jim Barlow wrote:
> In 2004, Johannes Sandvall and Erik Montnemery worked on some
modifications to Tremor as part of their Master's project. =20
> Here is the post describing some of their changes:
> They obtained significant performance improvements (107 MIPS down to
44.5 MIPS) by implementing a new MDCT calculation algorithm, which
massages the data and then uses an FFT for the core calculation. They
targeted an ARM + TI DSP I believe, with the DSP performing the FFT, so
your mileage may vary. Nevertheless it appears that the FFT method is
more efficient than direct MDCT calculation; most other codecs I'm aware
of use this strategy instead. One advantage is that tightly optimized
FFT kernels are more readily available, and processors tend to over
instructions that help with FFT rather than MDCT. I don't think the two
techniques are much different mathematically.
> The paper discusses other optimizations as well. It's a shame that
this patch never got merged into the trunk.
> They also modestly improved decoder quality (based on RMS error).
> The paper which introduced this technique is: Gluth R., Regular
FFT-Related Transform Kernels for DCT-based Polyphase Filter Banks
> Here are links to the patch and thesis:
> Perhaps this patch will be of some interest to you. =20
> Jim Barlow
Tremor mailing list
Tremor at xiph.org
More information about the Tremor