Incorrect volume range for audio devices

I upgraded to 13.1 yesterday (via software repositories). Everything seems to be fine, except for a strange problem with my audio card: A set of Logitech wireless headphones, connected through an USB nano-receiver.

When I first booted, sound wasn’t working, although the device was listed and recognized while volume was up to 100%. So I went in YaST - Sound and let PulseAudio re-configure the device. After restarting, sound was working again, but the volume range was different. Setting the volume over 75% seems to output more sound than the headphones are meant to handle, causing quality to be lost and loud music to sound like a mess. At the same time, volume becomes too low too soon, causing it gets muted at 25% of the volume setting. Might be related to another issue I described on the KDE forum. Also, volume is now set to 71% when I log in, rather than being persisted like it used to.

What can cause PulseAudio to detect an incorrect volume range? Is there a way to correct the minimum and maximum volume of audio devices, so when setting the volume slider to 0% it gets muted and at 100% it’s the maximum volume the device can support. And how can I fix the volume being changed whenever I log in?

MirceaKitsune wrote:
>
> I upgraded to 13.1 yesterday (via software repositories). Everything
> seems to be fine, except for a strange problem with my audio card: A set
> of Logitech wireless headphones, connected through an USB nano-receiver.
>
> When I first booted, sound wasn’t working, although the device was
> listed and recognized while volume was up to 100%. So I went in YaST -
> Sound and let PulseAudio re-configure the device. After restarting,
> sound was working again, but the volume range was different. Setting the
> volume over 75% seems to output more sound than the headphones are meant
> to handle, causing quality to be lost and loud music to sound like a
> mess. At the same time, volume becomes too low too soon, causing it gets
> muted at 25% of the volume setting. Might be related to ‘another issue I
> described on the KDE forum’
> (http://forum.kde.org/viewtopic.php?f=225&t=117723&p=293525). Also,
> volume is now set to 71% when I log in, rather than being persisted like
> it used to.
>
> What can cause PulseAudio to detect an incorrect volume range? Is there
> a way to correct the minimum and maximum volume of audio devices, so
> when setting the volume slider to 0% it gets muted and at 100% it’s the
> maximum volume the device can support. And how can I fix the volume
> being changed whenever I log in?
>
>
people have reported in the past that using pavucontrol had fixed volume
persistence issues


GNOME 3.6.2
openSUSE Release 12.3 (Dartmouth) 64-bit
Kernel Linux 3.7.10-1.16-desktop

Interesting. I went in pavucontrol to check it out, and noticed that when KMix shows 100% volume for my headphones, pavucontrol shows 153%. This explains the excessive volume, and why real maximum volume is located at about 70% on the volume slider. Why does this happen, and how do I fix it?

http://i44.tinypic.com/21cbmaa.jpg

On 13.1 KMix’s VolumeOverdrive setting is enabled by default. This allows the same volume range in KMix as in pavucontrol, i.e. 153%. But apparently KMix displays the 153% as 100%.

You can disable that by creating a file ~/.kde4/share/config/kmixrc with the following content:

[Global]
VolumeOverdrive=false

If kmixrc already exists, just add a line “VolumeOverdrive=false” to the “[Global]” section.
Kmix’s maximum volume should then be the real 100%.

Thank you, that fixed the excess volume issue. I wonder why Pulse Audio allows a volume greater than 100% to begin with though. Is that a hardware detection bug or is it normal?

Only remaining problem is the incorrect volume scaling, causing sound to get muted when the slider reaches 50% rather than at 0%. This happened before the 13.1 upgrade though, and was always the case. Any solution for this too?

AFAIK this is normal.

Only remaining problem is the incorrect volume scaling, causing sound to get muted when the slider reaches 50% rather than at 0%. This happened before the 13.1 upgrade though, and was always the case. Any solution for this too?

No idea.
Does it have the same behaviour if you turn off Pulseaudio? (YaST->Hardware->Sound, Click on “Other”->“PulseAudio Configuration…”)

Turning off PulseAudio would likely mess up my audio settings and might not even work. It’s not a crucial problem anyway, just one I’d prefer to correct if it’s not much hassle.

After upgrading more machines from 12.3 to 13.1, I noticed that all audio devices have the weird volume range. Normal volume is now at about 66%, anything above representing overdrive. Is this an intentional change, and what is its purpose? Why are all audio cards now setup to allow volume > 100% by default?

Because “VolumeOverdrive” is turned on by default now in KMix, as I already said. That’s a PulseAudio feature. This allows a volume up to 153% (as in pavucontrol), but KMix still shows the maximum volume as 100%.
I already explained in this thread how to turn it off.
Or use pavucontrol as mixer instead of KMix.

Yes, I already fixed it from KMix config. I was just curious if this is an intended change and why it was done if so. From your answer, I understand it’s intended and not a bug. But the only thing overdrive does is adding too much noise causing sound to get distorted. If I had less technical knowledge, I’d say “Linux audio is broken” when I’d install openSUSE and come across this.

So why was it defaulted, out of curiosity and to get a better understanding of how things work? And why 153%, what makes that represent a good maximum volume in PulseAudio’s view?

Well, it is an intended change in openSUSE’s default config.
I don’t know how supported that is by KMix’s developers. It still seems to be an experimental feature, because you explicitely have to edit the config file and cannot switch it on/off in the GUI (and normally it is turned off by default).

If you find it wrong that this is turned on by default in openSUSE, you should consider filing a bug at http://bugzilla.novell.com/ (same username/password as here).

So why was it defaulted, out of curiosity and to get a better understanding of how things work? And why 153%, what makes that represent a good maximum volume in PulseAudio’s view?

As I said, the general feature and the 153% come from PulseAudio itself. KMix has just been changed to support that as well. And apparently that support is not quite finished/official yet.
Changing the default to on in KMix was the openSUSE packager’s decision. I guess to be able to use the “full” 153% also with KMix.

But in the end, that percentage value is just a number. Does it really matter whether you set the volume to 100% out of 153%, or 66% out of 100%?
Actually the latter even makes more sense, one could argue… :wink:

Well, it is an intended change in openSUSE’s default config.
I don’t know how supported that is by KMix’s developers. It still seems to be an experimental feature, because you explicitely have to edit the config file and cannot switch it on/off in the GUI (and normally it is turned off by default).

If you find it wrong that this is turned on by default in openSUSE, you should consider filing a bug at http://bugzilla.novell.com/ (same username/password as here).

So why was it defaulted, out of curiosity and to get a better understanding of how things work? And why 153%, what makes that represent a good maximum volume in PulseAudio’s view?

As I said, the general feature and the 153% come from PulseAudio itself. KMix has just been changed to support that as well. And apparently that support is not quite finished/official yet.
Changing the default to on in KMix was the openSUSE packager’s decision.

But in the end, that percentage value is just a number. Does it really matter whether you set the volume to 100% out of 153%, or 66% out of 100%.
Actually the latter even makes more sense, one could argue… :wink: