Hello forks
Monday, November 24, 2003, 8:06:51 PM, you wrote: ft> The IMDCT function in MAD seems not easy to understand.
ft> Rob Leslie says that it is custom unrolled and factorized ft> implementation. But I still don't know how ...
ft> Would you please tell me about the IMDCT algorithm in MAD or ft> any reference documents? Thank you very much!!
I have just finished (almost) ... mmm ... porting MAD to 55xx series of TI DSP. So I think I now all about IMDCT in mp3 decoding process :) I hope :)). I am not sure I can explain to you MAD specific implementation of this part of decoder, but I can explain what action is implied in each step of this part of decoding process.
If You want we may discuss function by function. Maybe later I will prepare document which will describe all optimizations I have used - but I am afraid part of them are DSP specific.
And I have to say that MAD style maybe very good - I have not gone deep in understanding MAD implementation of math - because I have different aim and any way DSP specific implementation is faster in several times
for example IMDCT & overlapping require only ~(900-1000) tacts of DSP. Synthesis for one channel for 36 samples in 32 subbands take ~100 000 tacts.