winealsa.drv patch to enum all software devices from .asoundrc

Chris Robinson chris.kcat at gmail.com
Mon Feb 13 14:08:57 CST 2012


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.



More information about the wine-devel mailing list