For my application, we rely on high-quality audio recordings that are taken during calls.
We run into a bug in Chrome where crosstalk (two or more participants speaking at the same time) causes really bad artifacts in that recorded audio - the artifacts are so bad that it's not a usable setup.
This is the Chromium tracker item:
Our workaround for this has been to turn off echo cancellation by setting optional audio constraints on echoCalcellation, googEchoCancellation, and googExperimentalEchoCancellation (setting all as false).
This works for the sound artifacts. Unfortunately, for many users (especially those using earbuds), they then need to turn the volume down so low that they cannot hear the call anymore. In many cases we end up with recordings with echo on them because the person on the call simply had to turn the volume up to be able to hear other people.
Obviously the long term fix is to wait for the Chrome issue to be fixed, but this has been a problem for two years and the current fix does not appear to be close to getting into Chrome.
We've tried everything we could think of to try to work around this (opening separate connections, trying different constraints, etc) and nothing has worked. Most recently I tried a constraint of 'googDucking' set to false, which is what UberConference sets, but Chrome did not see this as a valid constraint upon examining webrtc-internals.
Wondering if you all who know quite a bit more than we do about the topic had any sort of suggested workaround we might be able to try.
Thanks,
Josh