On Monday, February 13, 2012 8:37:42 PM Нискородов Серёжа wrote:
Chris Robinson wrote:
It's not something normal users do, but for "power users" I don't see a problem with asking them to tell Wine about it.
I'm a power user, but for what I have to wrote device name in regedit, if I can just select it from the list?
Getting a sane list from ALSA is the problem. If there was a way to get purely user-defined devices (excluding front, surround*, iec958, null, etc, unless the user has explicitly configured them to be listed) that would be one thing, but as it is, ALSA's enumeration methods leave a lot to be desired.
For now, I think snd_card_next, with registry options for custom prefixes and an additional set of devices, is the best way to go. There's simply too much junk with snd_ctl_name_hint.
In the long run, I think ALSA itself needs better device management. I have some ideas for this, like a new prefix to follow per-device configurations (i.e., so an app can open "whatever:CARD=name,DEV=index", and ALSA will automatically use a user-defined card/index-specific configuration). Virtual devices that a user has defined via .asoundrc would be enumerated as their own cards with one device index (i.e., it would be enumerated as a normal card, and instead of opening "custom" you'd open "whatever:CARD=custom,DEV=0").
That, or something like that, would of course require changes to ALSA, but I think it would ultimately benefit everyone.