Question

I am running Ubuntu 12.04 and I have NVidia graphics cards with the nvidia-common driver.

ALSA supports mute/unmute with the alsamixer or amixer controls for that device. Other audio cards have volume control.

I want to control the volume of the HDMI out. I tried to use the "softvol" pcm type, but it failed to load on my actual hardware (worked on the "default" slave, when I specified a loopback slave, but not when I specified the hw:NVidia slave).

The plan is to route from JACK to the HDMI, and I want to control the volume to that HDMI. Any suggestions? Below is the addition I made to the .asoundrc (which failed):

pcm.test {
  type softvol
  slave.pcm "hw:5"
  control {
    name "volname"
    card 5
  }
}
Was it helpful?

Solution

Try designating the device as well as the card. Device 7 is where it works for me. So change the lines you have above to

pcm.test {
  type softvol
  slave.pcm "hw:5,7"
  control {
    name "volname"
    card 5
  }
}

and it should work. Also, make sure you reboot to test the results. I think that once the OS has taken control of the video cards then alsa can no longer change the settings. (Though I could be wrong on that)

If you run:

amixer controls -c5

then one of the lines should read:

...
numid=25,iface=MIXER,name='volname'
...
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top