Bug 213723 - Echo cancellation doesn't work in WebRTC calls when using external microphone
Summary: Echo cancellation doesn't work in WebRTC calls when using external microphone
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebRTC (show other bugs)
Version: Safari 13
Hardware: Mac macOS 10.15
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2020-06-29 03:48 PDT by mawojtcz
Modified: 2022-05-27 15:20 PDT (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description mawojtcz 2020-06-29 03:48:05 PDT
Steps to reproduce:

1. Connect a usb microphone (or a webcam with a microphone) to a Macbook
2. Use Cisco Meeting WebRTC app to join a call with Safari

Expected behaviour:
There should be no echo

Actual behaviour:
All other participants can hear an echo - basically the echo cancellation on Safari when using external microphone is not working correctly.

Further info:
We've double checked that the echo cancellation is enabled on the audio track. The same call works perfectly fine when using Chrome with the same equipment and our app, so it does seem that it's a Safari/Webkit issue. Also it seems to work fine on Safari when using internal microphone.

If you contact me directly I can provide a link to reproduce the issue with the Cisco WebRTC app.

The usb webcam with microphone that I was using in testing is Microsoft Lifecam HD-3000.

Same issue exists in Safari Technology Preview.
Comment 1 Radar WebKit Bug Importer 2020-06-29 17:56:05 PDT
<rdar://problem/64916752>
Comment 2 mawojtcz 2020-07-21 06:04:22 PDT
Any update on this? Many users are reporting this problem to us on Safari and it works perfectly fine in Chrome.
Comment 3 youenn fablet 2020-07-22 02:51:38 PDT
Thanks for the bug report.
Would you be able to privately send me a sysdiagnose so that we can do further investigation?
Comment 4 youenn fablet 2020-07-22 02:55:04 PDT
By the way, can you reproduce the issue in a simple page like https://webrtc.github.io/samples/src/content/devices/input-output/.

Doing a simple test on my MacBook, I validated echo cancellation is working although this seems less efficient than with the built-in mic.
Comment 5 mawojtcz 2020-07-23 08:20:53 PDT
I've just sent you an email with the sysdiagnose now.

We can also reproduce the problem by just using https://appr.tc/
Comment 6 Anna Vasilko 2021-03-30 10:41:07 PDT
We are getting customer reports of the same issue. Reproducible with Safari only, not with Chrome.
https://github.com/twilio/twilio-video.js/issues/1433

Youenn, 
We can reproduce quite consistently on MacOS Big Sur, the sysdiagnose file was sent to you in email.
Comment 7 Manjesh Malavalli 2021-04-13 10:25:20 PDT
Hi Youenn,

We were able to reproduce the behavior using the following repro steps:

1. Chrome user joins an AppRTC Room (https://appr.tc/).
2. Safari Big Sur user joins the same Room with an external USB microphone and MacBook built-in speakers.
3. Chrome user hears his/her own voice when talking to the Safari user.

Hope this helps.

Thanks,

Manjesh
Comment 8 Daniel ORorke - Vonage 2022-05-27 15:20:52 PDT
Hi @Manjesh - Can you guys still reproduce?
We found that in Safari 15.5, I am unaffected by audio echo using external microphones (or at least the ones I have on hand - Logitech Brio and a wired headphone mic).

The issue may have been a recently resolved problem with the publisher's audio track becoming unmuted in Safari 15.0 - 15.4.x. This effectively bypasses the Echo Cancellation altogether.

Let me know what you find, I'm curious!
--Daniel from Vonage