Open Bug 1689340 Opened 3 years ago Updated 3 years ago

Improve autoGainControl by adjusting input volume through the OS

Categories

(Core :: WebRTC: Audio/Video, enhancement)

enhancement

Tracking

()

People

(Reporter: sfleiter, Unassigned)

Details

(Keywords: parity-chrome)

Attachments

(1 file)

Attached image Microphone input level

Steps to reproduce:

  • Use headset
  • Adjust microphone input level to minimum (screenshot, operating system dependent)
  • Open https://jsfiddle.net/jib1/n7bmkjnf
  • Allow access to mic in OS and website (restart browser if not given before)
  • Enable constraint autoGainControl
  • Speak into microphone

Expected behavior:

  • WebRTC Automatic Gain Control (AGC) adjusts input volume
  • You can hear yourself

Actual behavior:

  • WebRTC Automatic Gain Control (AGC) does not adjust input volume
  • You cannot hear yourself

Other Information:

Keywords: parity-chrome

Maybe blocked by bug 1654112?

Flags: needinfo?(na-g)

bwc, I wonder if your recent mic issues could be related. Marking as blocked by bug 165411. It would be good to find a regression range.

Depends on: 1654112
Flags: needinfo?(na-g)

I tried to find a regression range during launch.

Installing mozregression on mac via
python3 -m pip install mozregression
fails as long there is no cargo.
Installing rust via brew solved this.

Starting mozgression via
mozregression --good 2017-06-01 --arg="https://jsfiddle.net/jib1/n7bmkjnf"
,guessed from date of blog article,
rendering of web content is totally broken for that build already,
content stays white, probably because Firefox was not yet compatible with MacOS Big Sur.

If I find the time I will setup mozregession in my Windows test VM and try there,
even if it probably would be better for someone to do that on a real machine.

Our implementation of AGC is working, which you can hear on the provided fiddle by listening carefully while turning it on and off, while having a low input volume set.

Chrome goes further than us because they will also adjust the input volume control of the OS, whereas we just operate on the input signal as given to us by the OS.

We have never adjusted the input volume control so I consider this a feature request. The libwebrtc update won't help here either, since we don't use libwebrtc for audio input.

Type: defect → enhancement
No longer depends on: 1654112
Summary: WebRTC autoGainControl does not work → Improve autoGainControl by adjusting input volume through the OS
You need to log in before you can comment on or make changes to this bug.