Bug ID 1171293
Summary WebRTC apps manipulating mic gain to 100%
Classification openSUSE
Product openSUSE Tumbleweed
Version Current
Hardware x86-64
OS openSUSE Factory
Status NEW
Severity Major
Priority P5 - None
Component Sound
Assignee tiwai@suse.com
Reporter sb56637@gmail.com
QA Contact qa-bugs@suse.de
Found By ---
Blocker ---

Hi there, recently I've been running into major problems with Electron apps for
the Linux desktop (Microsoft Teams and Riot.im) modifying my mic input levels.
Also Chromium/Chrome do the same thing during WebRTC calls, they raise my mic
level to 100%, thus completely saturating the audio and making it unusable. I
drop it back down manually, but within a few seconds it creeps back up to 100%
again. In my case it tries to max out the mic gain, but I've read lots of other
user reports where it tries to lower the user's mic gain to an unusable level.

Sometimes this is the result of a "smart" VoIP program like Skype that has an
option to allow the program to adjust the audio device levels. But my problem
is that all my VoIP apps use WebRTC, which appears to include its own
implementation of AGC as part of the protocol, and it's obviously buggy in
anything based on Chromium (Chrome, electron apps, etc.), and there's no way to
disable it. There have been bug reports to Chrome(ium) for years about this and
they obviously don't care. Firefox doesn't exhibit this behavior, but
unfortunately a lot of WebRTC apps are either Electron (based on Chromium) or
else they don't support Firefox very well. Ultimately, I think this behavior
should be controllable via PulseAudio, since we can't assume that all apps with
have sane behavior.

In Windows there's an option to not allow programs to control a specific
device. It appears this should be possible in
`/usr/share/pulseaudio/alsa-mixer/paths/analog-input-internal-mic.conf` by
changing `volume = merge` to `volume = off` or `volume = XX` according to what
I've read. But since the profiles are under `/usr/share/` they're obviously not
meant to be user configurable. Is there any way that these profiles could be
moved to `/etc/pulse` and/or `~/.config/pulse/`? Or is there any other
workaround?

This is a major issue that is making it almost impossible for me to work from
home.... Thanks, I appreciate the help.


You are receiving this mail because: