On Monday's IRC, we discussed a little bit about how to get ALSA mixing sounds, but I'm not sure anyone got it working until after the meeting, so here's a summary and intro for those who missed it.
Usually, only one thing opens the sound device at once and that's a pain. Different workarounds (esd, arts) exist, but it's surely better to do this in the sound driver. ALSA supports hardware mixing on some cards and is included in 2.6 kernels. Look at the Soundcard Martrix on http://www.alsa-project.org/ and see if your card has a (4) which means hardware mixing supported. If you have hardware mixing, using the right ALSA drivers is probably all you need to do. I think using ALSA-enabled programs is best, which usually just means installing the right package or compiling with the right options. For applications using the old /dev/dsp device, I think the module snd-pcm-oss should cope with it. I've not tested that and would like to hear what you find.
If you don't have hardware mixing, then you need to enable the dmix plugin by editing a config file. Instructions are on http://www.alsa-project.org/alsa-doc/doc-php/asoundrc.php3#softmix but you probably want hw:0,0 instead of the 1,0 in the example. My main machine doesn't do hardware mixing, so I did this.
In my experience, this *will* highlight any misconfigurations or weaknesses in your sound setups, which is why it's not done by default for cards that can't do hardware mixing. I found that sounds played out with horrible clicks, but I had a minor option for my card incorrect in modutils.conf. When I put that right, it worked fine.
The XMMS sound player complained until I increased the two _size options in the config file. Also, XMMS needed to be told to use user-defined "default" output instead of the detected card and not use "mmap mode". I don't know exactly what all that does (although I could guess), but trial-and-error is wonderful, isn't it?
Now, what about OSS-only programs? The OSS emulation doesn't cope for software mixing, as far as I can tell. While sound is playing via ALSA, I get "device busy" from things trying to use /dev/dsp. Running them through aoss (from the alsa-oss package) works.
Anyway, I hope you enjoy mixing your Frozen Bubble music with http://muzik.agnula.org/ or similar ;-) Thanks to IRC #alug for help.