[alsa-devel] Call for Explanation of ALSA Config Behavior
I'm trying to get ALSA to support all the little features of my laptop, which is based on the Intel HDA chipset with the Realtek codec. I'm also playing with the softvol plug to add a volume controls over certain virtual devices.
A few questions I can't figure out:
1. Isn't it the standard convention that there be a control named "Master" that adjusts the overall volume of a device? So why does the Intel HDA ALSA driver define one named "Headphone" that does the same thing instead of following that convention? Is there some reason, or perhaps a difference in opinion within the ALSA community on the naming of controls? Shouldn't every ALSA driver define a "Master" control?
2. When I add a control using the softvol plugin, the mixer GUI shows it in both the playback and the capture set of controls. Why and how can I tag a control to belong to only one set or the other? Being a volume control it seems it should only be in the playback collection.
3. Once I add such a control, it -never- goes away. What I mean is that if I rename it, or remove it, and restart ALSA or even restart the entire computer, the old name for the control always shows up in the mixer GUI. I've grepped *all* of /etc, looking in the /etc/asound.conf, /etc/asound.state and ~/.asoundrc files but the old name isn't anywhere -- where is it coming from?
Thanks very much for any help you can provide, For years I've just tried to "use" ALSA but now I'm trying to actually understand its subtle nuances.
-Jeff
Hi!
I not an expert at all, but maybe I can bring some light into the dark...
Jeff Rush schrieb:
I'm trying to get ALSA to support all the little features of my laptop, which is based on the Intel HDA chipset with the Realtek codec. I'm also playing with the softvol plug to add a volume controls over certain virtual devices.
A few questions I can't figure out:
- Isn't it the standard convention that there be a control named "Master" that adjusts the overall volume of a device? So why does the Intel HDA ALSA driver define one named "Headphone" that does the same thing instead of following that convention? Is there some reason, or perhaps a difference in opinion within the ALSA community on the naming of controls? Shouldn't every ALSA driver define a "Master" control?
I totally agree with you and I'm surprised regularly how unituive volume control is on some drivers. IMO, there should be a Master control, controling all the output, and controls that permit to control all output of one channel (for example 5.1 cards would have front, rear and center/lfe controls). Unfortunately, I don't have enough programming skills to change that :-/
- When I add a control using the softvol plugin, the mixer GUI shows it in both the playback and the capture set of controls. Why and how can I tag a control to belong to only one set or the other? Being a volume control it seems it should only be in the playback collection.
I'd be glad to know the solution to that problem, too! Maybe it can be "found" on http://www.alsa-project.org/alsa-doc/alsa-lib/pcm_plugins.html#pcm_plugins_s..., but probably only, if you already know it... Maybe the "[iface STR] # interface of the element" part is the key? If someone knows, please tell me, so I can update the softvol article of the wiki.
- Once I add such a control, it -never- goes away. What I mean is that if I rename it, or remove it, and restart ALSA or even restart the entire computer, the old name for the control always shows up in the mixer GUI. I've grepped *all* of /etc, looking in the /etc/asound.conf, /etc/asound.state and ~/.asoundrc files but the old name isn't anywhere -- where is it coming from?
On http://alsa.opensrc.org/Softvol, you can find an explanation of how to finally remove a softvol control. I admit that it's kind of tricky :-)
Thanks very much for any help you can provide, For years I've just tried to "use" ALSA but now I'm trying to actually understand its subtle nuances.
-Jeff
I hope this helps. Greets, Ingo
participants (2)
-
Ingo Müller
-
Jeff Rush