At Wed, 20 Jan 2010 21:20:40 +0200, Aleksandar Kostadinov wrote:
Hello,
From some time now ALSA is a real pleasure to use. Namely it works by
OOB and has lots of predefined useful PCMs so one doesn't need to be a guru to do advanced operations.
I think that a small improvement in how default PCM is defined can help users with multiple sound cards that like to use pure ALSA and not some of the many available sound servers. I want to be able to switch the default sound device easily in asoundrc but the way the default pcm is defined makes this not very straightforward. I like to use the definitions of default:<CARD> but if I define "pcm.!default" in .asoundrc I lose the "default:<CARD>" definition. I now can rename the "default" definition in default.conf to someting like "defaultorg" and then reference it asoundrc but that requires root as well change can possibly disappear after an alsa-lib package upgrade. Or I can use the dmix and dsnoop predefined PCMs to put together PCMs that I can later reference in my "pcm.!default" definition but in this case one needs to know if the card needs dsnoop/dmix and probably other tweaks that default.conf contains. Additionally this needs to be done for every sound card one owns.
That's true.
So I would suggest the "default" PCM as defined now in the default.conf file to be renamed to something like "alsadefault". Then "default" PCM should be an alias to the alsadefault pcm. This will be backwards compatible to what users have now and owners of multiple sound devices can define their "default" pcm in asoundrc referencing the alsadefault pcm benefiting from the good work already done and not have to mess with a complex asoundrc file or make changes to the system configurations files.
Agreed, I've had also the same idea. But, a good name didn't come to my mind, so I didn't actually implement it.
"alsadefault" PCM also sounds somewhat a system-wide default, thus might be a bit confusing. Basically it should be a default PCM definition for each card. Well... a good godfather / godmother is wanted ;)
thanks,
Takashi