MP3 decoding code, NOT realtime

Every time I want to listen to a song, I'll decode it, play it, and then erase the decoded version.

So you want to listen to a 3 minute track. You select it and hit play. Then there is a 10 minute delay before any sound is produced. Is this a system you want to use? Remember you said it did not have to be real time so you do know it will take longer than the playing time of the track to decode.