[tremor] MDCT_lookup tables reduced by one third.
timmy brolin
timmy at home.se
Mon Sep 9 17:13:30 PDT 2002
I reduced the MDCT lookup tables by one third by first separating the sine/cosine tables from the rest and then reducing the sine/cosine tables to only one quarter of a sinewave.
The PCM output is identical to that of the original version.
The code is not perfectly optimized, but it isn't that much worse than the original, I haven't done any performance comparisons. If someone does, then please post the results.
The only place I can think of where I might have added a few extra cycles is in "mdct_butterfly_generic", but I think it can be optimized quite a bit more.
I didn't care about keeping and modifying "mdct_butterfly_first" cuz I'am too lazy, feel free to put it back in there if you want it.
The only difference between 'generic' and 'first' is that 'trigint' is replaced by a constant '2'
I also removed the T argument from several functions, cuz it isn't necessary anymore, I did however add one global variable, "int step" (32bit is not necesary, it can be reduced to a 8bit char).
It can of course be changed into an argument.
Here is the patch, just replace mdct.c and mdct_lookup.h with theese:
http://194.47.15.142/~timmy/mdct.zip
Cheers!
Timmy Brolin
--- >8 ----
List archives: http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'tremor-request at xiph.org'
containing only the word 'unsubscribe' in the body. No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.
More information about the Tremor
mailing list