There are many layers in the audio stack that could contribute to this symptom. Most directly is the behavior that PulseAudio defaults to, and you can read about that at http://pulseaudio.org/wiki/PulseAudioStoleMyVolumes. You can work around some instances using the instructions I contributed at https://wiki.ubuntu.com/DebuggingSoundProblems/KarmicCaveats#Volume%20range%20anomalies:
Volume range anomalies
The latest version of PulseAudio tries
to control the volume of the sound
card using its mixer controls. Usually
this works just fine, but in some
cases this does not work properly.
(Whether this is PulseAudio's or
ALSA's fault is beyond the scope of
this wiki page. Some more background
information is here.)
Diagnosis
You experience any of the following:
- Jumps in volume, e g if everything below 20% is muted, and 21% is very
loud.
- Overdriven (distorted sound) if the volume is set above a certain
(low) level
- No volume changes in parts of the range, e g if 20% is just as loud as
70%.
Fix / Workaround
There are a few variables which
control how PulseAudio controls the
volume. You can either edit
/etc/pulse/default.pa
(you'll have to
be root to do that) to change the
behavior for all users, or copy that
file to ~/.pulse/default.pa
and then
edit that file, to change behavior for
the current user only.
Open the file mentioned above. Find
the row saying load-module
module-udev-detect
and change it to:
load-module module-udev-detect ignore_dB=1
To try your changes, restart
PulseAudio with the following command:
killall pulseaudio
PulseAudio will then autospawn
(restart itself).
You may find that the above workaround
is insufficient, in which case you may
configure PulseAudio to control only
one mixer control, e.g., PCM (cf.
alsamixer). Find the row saying
#load-module module-alsa-sink
and
change it to:
load-module module-alsa-sink control=PCM
(remember to remove the # in the
beginning of the row!) Optionally
replace PCM with the mixer control you
want PulseAudio to control.
You will then need to killall
pulseaudio
as above and allow the
daemon to autospawn.
Finally, whether this anomaly is actually a bug requires you to use ubuntu-bug alsa-base
.
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
to PlaybackBuiltinAudioAnalogStereoPulseAudioMixer
did.
EDIT: If the above did not work try setting this via terminal and xfconf, e.g.
xfconf-query -c xfce4-mixer -p /active-card -s 'PlaybackBuiltinAudioAnalogStereoPulseAudioMixer'
Best Answer
Press Alt+F2 keys. A small text box will appear at top margin in center of screen with few icons. Type
kmix
. And now there will be a option of KMix with its logo. Click on it. And look in notification area there should be broadcasting speaker; click on it.You get dialog box with few buttons Select the button with Spanner on it. A window will open named "Configure KMix". In that window on left hand there will be General option. In General option you will uncheck the "Volume Feedback". close window. Right click on speaker in notification area select Quit. And restart KMix as described above. This should solve your problem.