> Today I had a scary experience with the audio of my computer.
> I was listening to music with Amarok, using my headphones... The KMix volume
> level was ~ 35%. When I logged into a video conference application, the
> volume suddenly reached the 100%. I was shocked, having the maximum audio
> level shooted in your ears is a painful experience.
> The conference application that triggered PulseAudio pushing volume to
> maximum level probably should have never asked the system for a 100% audio
> level, but on the other hand, PulseAudio should never allow an application
> to make such sudden changes.
> To avoid that, you have to set
> flat-volumes = no
> in /etc/pulse/daemon.conf
I disable flat volumes on every computer that I own. In my experience there are
too many applications that interact with it improperly, and having the master
volume raised suddenly can be extremely unpleasant. It's naive to think that
all apps will behave and will not contain any bugs. The system should not allow
the apps to physically hurt the user just because of bugs or improper
implementation. Flat volumes allow exactly that.
A colleague of mine experienced music volume bursts every time Pidgin played a
notification. No amount of fiddling with Pidgin settings seemed to be able to
fix that. I recommended him to disable flat volumes and the problem was of
course gone. And this is Pidgin, one of the most prominent IM apps in the Linux
world. What about third-party apps, how can we expect them to behave?
The problem is not related just to increasing the volume suddenly. There are
other confusing and annoying use cases. If you have a game without a volume
slider (think of something along the lines of Extreme Tux Racer) and you want
to temporarily increase other volume source (let's say a youtube video, or a
skype), if you raise the volume, it makes it at the expense of the other apps.
So your game is now at e.g. 30% of the master volume (that value is remembered
and applied for future app executions as well). The end result is that after
you finish e.g. calling with someone and switch back to the game, it's suddenly
way too silent, no matter how much you turn the knob of the master volume (and
if you crank it fully up, sounds from other apps might pierce your ear drums).
Closing and starting the game again doesn't help. The only way to fix this is
to go to deeply buried sound settings in gnome control center and adjust your
app's slider. Hardly discoverable for a standard user. And you need to do this
every time such a use case happens. If GNOME implemented a slider for every
playing application in the user menu [1], this wouldn't be so bad, but it
doesn't.
Another confusing use case is when you have temporarily increase the volume too
much and quickly drag it down (let's say you have rhythmbox playing and you
increase the volume to 100% percent by accident, then lower it down
immediately). When you turned the app volume up, the master volume went up
(let's say it's 100% now). When you turned it down, only the app volume went
down, the master volume stayed at 100%. So when you run a different app and it
emits some sounds, it's going to blast your ears off, without warning.
Overall I think the flat volumes idea might be appealing in theory, but breaks
hard in a number of not-so-edge cases, which unfortunately are not that rare as
they might have seemed to PA developers. Also, these cases either result in an
annoyance ("the volume is too low and I don't see how to fix it") or even a
physical attack (if an OS allows to blast 100% volume into my headphones even
for regular, non-malicious apps, just because of "missing implementation", I
won't be using that OS for long). The impact of these "bugs" is simply too
high. I'd love to see flat volumes disabled by default.
[1] https://extensions.gnome.org/extension/858/volume-mixer/
--
devel mailing list
[email protected]
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct