On Mon, 2006-04-24 at 03:58 +0900, Joel Roth wrote: > > Here is a summary of some responses related to this > question.
I posted about it on the Ubuntu list and the response from the developers was that it's broken for apps to rely on a particular soundcard ordering. Here's the response I got from Martin Pitt: Hi Lee, Lee Revell [2006-04-07 14:58 -0400]: > I was wondering what the recommended way to set the order of sound > devices is in Ubuntu. For example a user needs their USB headset to > always be the first device and the onboard sound to be the second, for > the sake of (broken) apps that can only talk to /dev/dsp. But, if the > machine is booted with the USB device unplugged, the onboard soundcard > binds to /dev/dsp. Or, a user has 3 USB audio devices and needs them to > be bound in the same order every time. With ALSA this is not much of a problem any more, since you can address the devices by name. That's what the default audio card selector now does in Dapper. That means that the order becomes largely unimportant, apart from OSS applications, of course. A workaround for the latter might be to use aoss. > It seems that udev should be able to handle this but I don't see any way > for humans to configure it ;-) It's a real pain because every distro > does it differently and none of them seem to have an easy way. There is no particular 'Ubuntu way' of forcing a sound card ordering, and udev currently does not support that, so you have to do manual modprobe hacking to achieve that effect. However, the real bug is apps relying on a particular sound card order in the first place. Martin Here's a more detailed response from Scott Remnant: On Mon, 2006-04-10 at 07:53 +0200, Martin Pitt wrote: > Lee Revell [2006-04-07 14:58 -0400]: > > It seems that udev should be able to handle this but I don't see any way > > for humans to configure it ;-) It's a real pain because every distro > > does it differently and none of them seem to have an easy way. > > There is no particular 'Ubuntu way' of forcing a sound card ordering, > and udev currently does not support that, so you have to do manual > modprobe hacking to achieve that effect. However, the real bug is apps > relying on a particular sound card order in the first place. > Just to clarify on this; udev will *never* support forcing ordering of module loading. It's usually requested for one of two reasons, here's why they are both invalid: 1) two drivers are loaded for one card, and the order matters (e.g. bttv, orinoco, etc.) The order shouldn't matter, this is clearly a bug in the driver and we'd much rather just have that fixed. This isn't a solution because you may have two pieces of hardware, one supported by each driver. One of those pieces of hardware might be removable, how do you force the module loading order when the user doesn't plug in the second device until an hour after they booted (and the driver for the first device was loaded). 2) forcing the order in which two different devices of the same class are enumerated (e.g. network cards, sound cards, etc.) Software should instead be modified to address devices by something other than their kernel enumeration (e.g. MAC address, etc.) and present the user with a list of potential devices. The GNOME CD writing apps are "gold star" pupils in this regard; they don't bore you with /dev/sda1 type messages -- they just give you a list of your recorders product names, and you pick the right one. Again, the fundamental reason this cannot be fixed is removable devices. How do you cope with the removable device being "zero" and the built-in device being "one"? Would you prevent the internal sound card from working unless the removable USB device was present? It's better to not have any concept of a "primary" or "default" device and just let applications select their target audio device. I heard some whisperings that GNOME was considering per-app volume settings; wouldn't it be great it you could adjust the volume in Rhythmbox to be quieter than the system beeps. I think it'd also be great it you could select per-add audio devices, so you could tell Rhythmbox to send the audio to your USB headset for a while, etc. Scott -- Scott James Remnant [EMAIL PROTECTED] ------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user