Audio quality - avoid automatic input level control

Hi developers,
I’m not a developer, I’m a user, with special needing.
I’m a musician, pianist and piano teacher. I tried to work online, doing lesson or merely listening my students sometimes, using most common social networks : Whatsapp, Skype, WeChat and so on; first I need absolute synchronized audio and video, and I saw that it’s one of the most feature of this platform.
On second, I would find a way to avoid the automatic input level control on the device (in my case, android smartphone), because this feature compromises very badly the dynamic range of audio stream; I’m working with classic music and I need to well select the difference between a ‘pianissimo’ and a ‘mezzoforte’.
I tried to search about but without results, I’m not a developer, but I think this problem stays behind your code, but I would ask if I can avoid it using, for example, a PC (I’m a Linux user) instead of a smartphone, or what do I need to avoid it using an Android or Apple phone.
I thank you in advance for your patience, hoping to bring all you an interesting subject of discussion.
My greetings
dario

2 Likes

Hi Dario,

You can disable automatic gain control by appending this to your URL: “#config.disableAGC=true”. This should work on Chrome on the desktop, but I don’t think it will work on mobile. Perhaps someone else can chime in if they know of a way to pass config params on mobile.

Also see here for more audio processing options you can disable this way:
https://github.com/jitsi/lib-jitsi-meet/blob/master/modules/RTC/RTCUtils.js#L78

To pass more than one option you need to separate by ampersand, e.g.:

https://meet.jit.si/conferencename#config.disableAGC=true&config.disableHPF=true

Hope this helps,

Boris

3 Likes

Passing the https link with params in the join room field should work, at least it used to work. We were using that for testing using torture.

1 Like

I thank you very much; you were opening a window I was searching for long time; I’m using Firefox instead of Chrome, but I can use it as well; unfortunately the most common devices to be used for my activity would be mobile devices, but it’s a good starting point anyhow.
Where may I get more details about the quality of the audio received (bandwidth, dynamic range)? is it a feature of WebRTC or there is a codec operating some processes ?

greetings

dario

1 Like

Hi Dario, I’m new here, but I’m in the same situation as you - a piano teacher trying to learn how do on-line lessons. Have you tried Jitsi? How is it working for you? I’m also a Linux user. Mona

1 Like

it’s a mess, dear; I can’t find a solution…

1 Like

I think we can keep in contact privately, I could have just found a solution; write to
dario.marrini@protonmail.com

1 Like

Linux user and musician here also. Very interested in this topic. Please note that audio input levels are also a problem in Zoom on Linux, with the latest breaking the install. Hoping Jitsi does better.

Hi all,
I tried what damencho said and works like a charm:

https://[SERVER]/[conference]#config.disableHPF=true&config.disableAGC=true&disableNS=true&config.disableAEC=true&config.disableAP=true&config.stereo=true

Actually I’m using my own Jitsi build and servers, but the sound quality is increased with those params. remeber p2p won’t take into account this parameters, it does when the video bridge is involved.

In firefox from linux, When I’m prompted for audio device I can chose between:

  • Built in Audio device
  • Monitor od Built in Audio device. <—

The last on will take what would be supposed to o through your speakers as input mic. Hope it helps, I’m doing virtual parties with success. Thanks Jitsi Team. You are awesome!!

2 Likes

hi friend
I tried to follow your suggestion, but it doesn’t work with me; I always get a mono audio, with evident sound level manipulation; what’s missing? could we meet online for some live tests?

thanks

Hi Boris,
finally I get a working installation of Jitsi; I got a little vps server on Hetzner, so I can apply some experiments; I need to disable all audio processing, or part of them, I need to send and receive a very clear piano sound. I don’t know where to find that file in Jitsi source, can you help me?
I also tried to add parameters to website address, but it didn’t work for me.

Thank you

On my server, I see it here:

/usr/share/jitsi-meet-web-config/config.js

Well myfriends, I have solved the problem.
Following the suggestion of miuserdejitsi, I tried to use those parameters appending them to the address of the webpage; I didn’t get results before because trying with two partecipants only the system used p2p by default; then, I disabled the p2p on my server, I checked that that option was working well, then I modified the source disabling all audio processing; I get a full bandwith and full dynamic sound, great! Thank you very much.
Unfortunately I didn’t get the stereo stream, I ‘dont’ know why, I tried it with Chromium Browser and Firefox, but while having a goos stereo signail in input, I always get a mono sound instead on the other side; any idea is very appreciated .
Thank you all

dario

I also appended that config:

https://[server]/[conference room]#config.p2p.enabled=false&config.disableHPF=true&config.disableAGC=true&disableNS=true&config.disableAEC=true&config.disableAP=true&config.stereo=true

I saw that the kbps increased from 40 to 72, so I supposed it was stereo as boris said, but I f you want we can do some testing. I have my server working, so whenever you want, write me private msg and we can see

Same for me, stuck with mono audio. Can disable AGC, AP HPF etc but not mono signal.

Since even firefox now supports audio worklet, it would be good to have the options to choose AGC, AP, HPF and stereo directly into jitsi room interface.

Thank you guys this is awesome. Could I disable AGC, AP and HPF only for the moderators and not for the guests?