According to the ALSA soundcard matrix my soundcard (Echo MiaMIDI) supports hardware mixing, although I seem to be unable to get this working. I've tried different asound.conf files as well as using none at all. However, while playing one sound at a time works, playing multiple sounds always seem to result in a "output device busy" or similar. I thought maybe setting the output device manually to something like hw:0,1 or hw:1,0 (instead of hw:0,0) would work, but then I just get "unable to open device".
Now I really don't know what to try anymore. Can anyone help me?
I have Creative Audigy 4 which also has hardware mixing and I didn't have to configure anything. Everything works out of the box.
As far as I know mixing should work on cards with no support for hardware mixing without any configuration on newer versions of alsa.
I think I've been able to locate my problem. It seems hardware mixing was kind of working all along, however, the system is unable to find a free subdevice when a stereo sound is played. I can play multiple mono streams at the same time using aplay without a hitch. I'm also able to start playback in amarok or mplayer, but when I play a stream in stereo (whether it be in aplay or amarok etc) I'm unable to play another. My guess right now is that there is some kind of problem identifying free subdevices. When I have nothing playing aplay -l returns
$ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Mia [Mia], device 0: PCM [Mia] Subdevices: 8/8 Subdevice #0: subdevice #0 Subdevice #1: subdevice #1 Subdevice #2: subdevice #2 Subdevice #3: subdevice #3 Subdevice #4: subdevice #4 Subdevice #5: subdevice #5 Subdevice #6: subdevice #6 Subdevice #7: subdevice #7
but when I have something playing (whether it be mono or stereo) I get
$ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Mia [Mia], device 0: PCM [Mia] Subdevices: 7/8 Subdevice #0: subdevice #0 Subdevice #1: subdevice #1 Subdevice #2: subdevice #2 Subdevice #3: subdevice #3 Subdevice #4: subdevice #4 Subdevice #5: subdevice #5 Subdevice #6: subdevice #6 Subdevice #7: subdevice #7
Seeing how my card has 8 virtual channels, I feel that when I have a mono stream playing it should use the first free subdevice and block it, which seems to work fine. With stereo streams two free subdevices should be used and flagged as busy, but it seems only the first is flagged as in use and my guess is that this is what causes my regular "output device busy" problem. Does anyone have any ideas on how to resolve or work around it?
Last edited by Emphrygian (2007-08-29 21:48:30)