Okay, we spent the day staring at DMA traces and rewrote our low-level sound driver. The clicking is gone!

We did need to FSOUND_SetBufferSize(200) or nothing plays at all, but hey that’s a small price.

jules.mp3 also plays fine, though other mp3 files are playing as either noise or nearly-noise. We are in the process of tracking down the different with these files. Our current theory is that stereo is the problem. Is there a way to force 22khz mono output from stereo mp3 input?

CPU usage is around 35% playing jules. That’s on a 100mhz SH3. Really impressive!

Quick follow up to this: The problem was indeed with stereo output. Our platform is strictly mono, and our audio driver was doing a bad transformation that caused clipping and noise. Everything now works like a charm.