Well...
to be honest, from what little i know of MP3's and the block format they use, I'd suggest converting them to wave. I know it takes a lot of space, that is a common complaint. You can get around that a little by reducing the BITS PER SECOND of the sample, ie; rather than running at 128 bps for the MP3, run at 44 bps for the wave. (A better value is like 22 bps, or even less depending on your preferences.)
But so long as the block headers between mp3 frames exist, you're going to keep hearing that knocking sound. It's not pretty, but it's a fact.
S.
Any truly great code should be indisguishable from magic.