I'm using the ALSA dmix plugin on an embedded project, and mixing mp3 files by playing them with mpg321-alsa. In my asound.conf I've set my dmix sample rate to 44100Hz.
If I try to play any mp3 file sampled at a rate other than 44100Hz (or a rate that divides evenly into 44100Hz) then either the audio quality is degraded or even worse the start of the file is omitted. There's a random aspect to this: if I create an audio file that's say 300ms long and play it via mpg321-alsa then sometimes it plays OK and sometimes there's no sound at all.
Is this a known issue with dmix? Are there any workarounds, short of resampling the mp3 files?