I installed xubuntu-desktop on a 12.04 Ubuntu upgrade after finding Gnome3 lacking. I've mostly been happy, but I've found an odd and frustrating bug. My laptop has two sound 'outputs' - an HDMI-out plug I never use, and the onboard speakers/headphones. For some reason, the hardware keys have been mapped to the HDMI output, even if I set it as 'fallback' in pavucontrol, and notify-osd only displays changes in the HDMI output (though the panel indicator volume control controls onboard sound). I'd ideally like both hardware keys and notify-osd to be looking at the onboard sound, though if I can't get notify-osd it's an acceptable loss. Having to click through a bunch of stuff to change volume is driving me crazy, though.
Googling suggested that it /may/ be a Pulseaudio/ALSA conflict, but the hardware keys seem to change at least indicated volume in pavucontrol for HDMI as expected (I don't have an HDMI cable to test actual sound output)
I got a clue somewhere to look in Settings / Settings Editor (not the normal Settings Manager)
Then, under
xfce4-mixer
, there was the setting/active-card
which had the value:PlaybackHighDefinitionAudioControllerDigitalStereoHDMIPulseAudioMixer
I selected 'active-card', and hit the 'Reset Property' button. That turned the setting into:
PlaybackBuiltinAudioAnalogStereoPulseAudioMixer
( These names closely follow the names of the Output Devices in
pavucontrol
see screenshot )After a reboot, it worked. My volume buttons now affect the volume in the speakers.
(Scrub my earlier, now deleted, hint/comment about Play/Pause not working. They (still) work fine in Rhythmbox - that was/is an unrelated problem with
gmusicbrowser
)This may or may not work for you! :-)
EDIT: For some reason, my xfce profile got corrupted and I've restarted from scratch by
rm -rf ~/.config
. Now, only a few days later, resetting it didn't work for me either, but setting/active-card
toPlaybackBuiltinAudioAnalogStereoPulseAudioMixer
did.EDIT: If the above did not work try setting this via terminal and xfconf, e.g.
For those who do not have
/active-card
, it is not needed anyway, nor is thexfce4-mixer
. The sound is going through PulseAudio and therefore the "default" device is selected by the configuration of PulseAudio, andxfce4-volumed
will only change the "default" outputs volume.However you can use PulseAudios configuration tool for this,
pacmd
.First list the devices on your machine
It will print a lot of information about your devices, and as visible they all have an index
You need to set your preferred device as default. As you can see (the little star, i.e.
*
, before index:0) my HDMI was the default and I wanted the Analog output.You may need to kill
xfce4-volumed
and restart it, to have the desired effect without full system restart:But basically, that is it.
This fix will also fix the volume control on the Logitech G930 Wireless gaming headsets. (Not sure about the other buttons though) Launch Settings / Settings Editor (not the normal Settings Manager) or open a command prompt and type xfce4-settings-editor
Then, under xfce4-mixer And replace the active-card setting marked Value: to
I've included an image to make it easier to understand
Also if have problems with the headset volume working here's a link that may help https://bugs.launchpad.net/xfce4-volumed/+bug/901338
Basically do a killall xfce4-volumed and try moving the volume on the headset again
In KDE without editing config files, I was able to fix this by right-clicking the volume icon in the task bar and selecting
Select Master Channel...
.This brought up a KMix dialog where I selected
Built-in Audio Analog Stereo
instead ofGK110 HDMI Audio
. Immediately after clickingOK
the volume keys on my keyboard started working.Peters answer also worked for me. However resetting the /active-card deleted the entry. I just added it again:
name: /active-card
type: string
value: PlaybackBuiltinAudioAnalogStereoPulseAudioMixer
Rebooted and I did get an crash-report from /usr/bin/xfce4-volumed, but the controls work again.
Thanks!