PA streams with "filter.want" set to "echo-cancel" creates virtual source with 33% volume
It seems that the echo-cancel module adjusts the volume of newly created virtual audio sources.
Relevant link: https://askubuntu.com/questions/1015327/disable-volume-auto-adjust-in-pulseaudio-module-echo-cancel
Problem description: The GStreamer pipeline in Calls requests echo cancellation. As soon as a SIP call is established and the media pipeline is started a new virtual audio source is created, but curiously it has the volume set to 33%.
This happens regardless of the device: Using a USB Headset with the L5 but also on the PP.
How echo-cancellation is setup: For reference: in calls: https://gitlab.gnome.org/GNOME/calls/-/blob/master/plugins/sip/calls-sip-media-pipeline.c#L379 in wys: https://source.puri.sm/Librem5/wys/-/blob/master/src/wys-audio.c#L1009
Possible workaround:
Adding load-module module-echo-cancel aec_args="analog_gain_control=0 digital_gain_control=0"
to /etc/pulse/librem5.pa
will immediately create the virtual sink with volumes kept at 100%.
I've also tried setting digital_gain_control=0
in the aec_args in https://source.puri.sm/Librem5/librem5-base/-/blob/pureos/byzantium/default/audio/pulse/librem5.pa#L19
But that change alone did not solve the issue for me.
Only when I explicitly load the echo-cancel module will mic audio levels be kept at 100%.