Intermittent WebRTC audio fade out issue

581 views
Skip to first unread message

se...@missionlabs.co.uk

unread,
Jul 16, 2018, 9:49:02 AM7/16/18
to discuss-webrtc
We have an intermittent WebRTC audio issue affect a select number of our clients that we're trying to track down.

Our stack is Electron desktop app with bundled Chromium -> COTURN -> Janus (SIP Plugin) -> FreeSwitch.

The symptom is that the outbound audio can sometimes fade in and out and sounds extremely muffled or even disappears momentarily. The 2 audio files reference here show examples or a snippet from a good call and then a bad call, both very close together. The recordings were captured on FreeSwitch.

Good quality call - https://s3-eu-west-1.amazonaws.com/audio-samples-mlcl/Good.mp3 
Poor quality call - https://s3-eu-west-1.amazonaws.com/audio-samples-mlcl/Poor.mp3

Does anyone recognise these symptoms?
Any ideas to help us track this one down would be greatly be appreciated.

Thanks,
Sean

Jozsef Vass

unread,
Jul 17, 2018, 1:13:07 PM7/17/18
to discuss...@googlegroups.com
Sounds like excessive ducking by AEC to me. If your agent (on webrtc) uses headset, you may turn off audio processing. Also, not sure what version of Electron are you using, but usually it is a few versions behind Chrome/WebRTC and there are lots of fixes for AEC3 in recent version.

Jozsef

--

---
You received this message because you are subscribed to the Google Groups "discuss-webrtc" group.
To unsubscribe from this group and stop receiving emails from it, send an email to discuss-webrtc+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/discuss-webrtc/236db41e-0678-4fb1-8026-757182cf9c6e%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

se...@missionlabs.co.uk

unread,
Jul 18, 2018, 4:30:22 AM7/18/18
to discuss-webrtc
Hi Jozsef,

Thanks for your reply on this, we're seeing the same issue with stable Electron with Chromium 61 and a beta Electron build with Chromium 67.
Just regarding your comment on disabling audio processing for headset users, does that include AGC and noise suppression, or specifically echo cancellation?

Thanks,
Sean

On Tuesday, July 17, 2018 at 6:13:07 PM UTC+1, Jozsef Vass wrote:
Sounds like excessive ducking by AEC to me. If your agent (on webrtc) uses headset, you may turn off audio processing. Also, not sure what version of Electron are you using, but usually it is a few versions behind Chrome/WebRTC and there are lots of fixes for AEC3 in recent version.

Jozsef
On Mon, Jul 16, 2018 at 6:44 AM, <se...@missionlabs.co.uk> wrote:
We have an intermittent WebRTC audio issue affect a select number of our clients that we're trying to track down.

Our stack is Electron desktop app with bundled Chromium -> COTURN -> Janus (SIP Plugin) -> FreeSwitch.

The symptom is that the outbound audio can sometimes fade in and out and sounds extremely muffled or even disappears momentarily. The 2 audio files reference here show examples or a snippet from a good call and then a bad call, both very close together. The recordings were captured on FreeSwitch.

Good quality call - https://s3-eu-west-1.amazonaws.com/audio-samples-mlcl/Good.mp3 
Poor quality call - https://s3-eu-west-1.amazonaws.com/audio-samples-mlcl/Poor.mp3

Does anyone recognise these symptoms?
Any ideas to help us track this one down would be greatly be appreciated.

Thanks,
Sean

--

---
You received this message because you are subscribed to the Google Groups "discuss-webrtc" group.
To unsubscribe from this group and stop receiving emails from it, send an email to discuss-webrt...@googlegroups.com.

Jozsef Vass

unread,
Jul 19, 2018, 12:25:55 PM7/19/18
to discuss...@googlegroups.com
First, I would start disabling all audio processing and then just AEC and see whether you still get the issue. I would also run the same experiment in Chrome as well (if you can), I remember issues that did not manifest when running in browser.

Jozsef


To unsubscribe from this group and stop receiving emails from it, send an email to discuss-webrtc+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/discuss-webrtc/e300664f-e145-4330-b939-358d034d56b7%40googlegroups.com.

se...@missionlabs.co.uk

unread,
Jul 20, 2018, 8:14:25 AM7/20/18
to discuss-webrtc
Thanks Jozsef.
We think we've found a combination of constraints that cleans this up in Chrome 67 and above (included below for anyone who stumbles across this post). Our Electron app is Chromium 66 though and so far we're still getting the issue.

Disabling signal processing in Chrome 67+:

"audio": {
  "autoGainControl": false,
  "echoCancellation": false,
  "highpassFilter": false,
  "noiseSuppression": false
}

A couple of things that have tripped us up when trying to debug this:

1) Chrome 67 has gone standards compliant so no need for goog prefixed params or the optional/mandatory subobjects
2) It seems for Chrome, adapter.js no longer maps constraints to browser version specific variables - best option is to set these by hand for the target browser version and confirm using webrtc-internals that it's doing what you think it's doing.

Happy to be corrected on the above points if anyone wants to share their experience?

Sean
Reply all
Reply to author
Forward
0 new messages