Re: [Ekiga-list] Alsa device enumeration



Damien Sandras wrote:
Le mercredi 11 mars 2009 à 20:46 +0100, Alec Leamas a écrit :
There are some problems w the current code which enumerates the alsa devices. I have a sketch for a patch, this is really not that complicated these days, there are new library routines which support it.

The problem is just what devices to show, and how. Basically, there is two kind of devices: the classic devices which we partly see today, and several "new" devices such as pulse, hdmi, and several surround*. They exist for both capture and playback. The list for my box is below. The basic ideas are stolen from Skype. The important thing is the left column, the right is just internal stuff (hey, use a fixed font to see this...).
Any thoughts out there about this list?


I would clean it and remove entries with hw only. Because that's
complex. What is Surround40 capture ?
Surround capture is in my eyes complete nonsense. It's reported, though. I totally agree that it should not be visible to users.

The hw discussion is complex. Actually, there are documents on the alsa site which boils down to that using hw:/plughw: is deprecated, they recommend "front", "surround*" etc. But for capture, it just makes no sense. And, more important, if you have more than one card there is no way to e. g., direct sound to "device front at the usb headset". Which device "front" actually refers to is a part of fthe alsa configuration (normally the default device). So, to direct sound to a specific card you must either mess with the alsa configuration, or use the hw:/plughw:. This is my current understanding. I know there are people who knows more which is reading this...

My basic impression is that the alsa device addressing schema is a bit hard to handle, especially with more than one card. And although it's not that common that users have more than one card in their box, USB and bluetooth headsets are important use cases involving more than one card from the alsa perpective.

It's also important to sort out the different roles in device management. The ultimate goal in my eyes is to create a new UI focused on making it much easier to setup the sound system. The major task is really up to the UI code here. My basic view is that the driver should provide a reasonably complete list of devices with as much information as possible. This does not preclude hiding nonsense like surround capture, But the finer tricks should be done by the UI, and we should be careful not to hide to much in the driver. The UI has other options than to just take the list from the driver and place in a select box IMHO.

The plughw/hw is indeed complex. But to my understanding, it's really the only way to fix the basic task "Send sound to and get capture from the USB headset/main box/bluetooth headset". Of course, we could handle this by reconfiguring alsa. But since devices comes and goes away, and then comes back with a new number (sigh...) this is not that easy. Maybe the complexity of hw/plughw could be handled by a new UI?

--alec


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]