Video SDK - Audio (The sound is repeated)

Hi guys, please help me for this case
I’m using the version “1.11.5”, but I got an issue the sound is repeated
It happens in some cases and the sound is small.
When I turn off the host’s mic it works normally
Thanks all!

Hey @tuanna.fed

Thanks for your feedback.

Could you share some problematic session IDs with us for troubleshooting purposes?

Thanks
Vic

1 Like

Thank for your response.
Here is my sessionId SCEl4G6VQmySq01gq8bPYg==
And this is my recording. 面談ゴックマイ20240716094439.mp4 - Google Drive
Please help me check the sound is repetitive and howling when using external speakers or use a headset.
Thank you.

Hey @tuanna.fed

Thank you for sharing the recording with us.

This is an Audio Echo issue, and we rely on the browser’s capability to provide AEC (Acoustic Echo Cancellation) functionality.

I’ll briefly describe the scenario where this issue occurs:

  • When two users are far apart, even if using external speakers to play sound, the AEC capability ensures that the sound is not repeatedly sent out.

  • However, when two users are close to each other, the sound source may be from the other user rather than their own speaker. In this case, the sound is repeatedly captured and sent out, making the browser’s AEC ineffective, resulting in noticeable audio echo.

The solution for this is:

  • Increase the physical distance between users
  • Use headphones instead of speakers to prevent sound from directly entering the other user’s microphone.

Thanks
Vic

1 Like

Hi Vic, thank for your response.
Could you please help me clarify this my issue? In my recording file, I got this issue.

Hey @namttn

Thanks for your feedback.

Could you describe your question in detail?

Thanks
Vic

Hi @vic.yang, let me explain for this case
“We had a meeting between person A and person B who are far apart, using laptops, with microphones and external speakers turned on.
We are encountering an issue in this scenario:
Person A speaks to person B, and because person B has the external speakers on, the sound is picked up by person B’s microphone and transmitted back to person A, so person A hears the sound twice.
Can you tell me what the cause of this is, and if it is due to Zoom?”

Hey @namttn

I appreciate your detailed explanation.

Could you share the problematic session IDs with us for troubleshooting purposes?

Thanks
Vic

@vic.yang
Yep,
SCEl4G6VQmySq01gq8bPYg==
I already send it above

Hey @namttn

I apologize for my mistake. Because it wasn’t the same person asking before, I mistakenly thought you were referring to a new issue.

We will continue to analyze this issue further.

Thanks
Vic

Hey @namttn

I’m sorry for the confusion. Could you please confirm again if the echo issue occurs specifically on certain devices or if it happens for all users whenever an external speaker is used?

Thanks
Vic

@vic.yang
Yep, currently, we are experiencing issues in the following scenarios:

  • Using a laptop with external speakers and an external microphone
  • Using headphones with a single line for both the microphone and speakers

Hey @namttn

We tested these two scenarios on our devices, but cannot reproduce the echo issue.

Regarding the Acoustic Echo Cancellation (AEC), we rely on the browser’s built-in echo cancellation feature: echoCancellation.

Could you please help test this simple validation on your device to see if there is still audio echo?

let audio = new Audio();
const constraints = window.constraints = {
  audio: {echoCancellation: true},
  video: false
};

function handleSuccess(stream) {
  const audioTracks = stream.getAudioTracks();
  console.log('Got stream with constraints:', constraints);
  console.log('Using audio device: ' + audioTracks[0].label);
  stream.oninactive = function() {
    console.log('Stream ended');
  };
  window.stream = stream; // make variable available to browser console
  audio.srcObject = stream;
  audio.play()
}

function handleError(error) {
  const errorMessage = 'navigator.MediaDevices.getUserMedia error: ' + error.message + ' ' + error.name;
  document.getElementById('errorMsg').innerText = errorMessage;
  console.log(errorMessage);
}

navigator.mediaDevices.getUserMedia(constraints).then(handleSuccess).catch(handleError);

Thanks
Vic

@vic.yang
Oke. Thank you so much! Let me try it

Hi @vic.yang
For the source code you provided, I think it only addresses the echo phenomenon.
However, in my case, I don’t think it’s an echo.

The problem here is: When Person 1 says “Hello,” Person 2 is using external speakers, so “Hello” goes into Person 2’s microphone. This causes Person 1 to hear “Hello” again.
Is it true that Zoom currently cannot resolve this issue?
To address this issue, we are currently deliberately not using external speakers.
For other platforms, I think external speakers can still be used.
If you have any solutions for this issue, please kindly guide me.

Hey @namttn

Could you share if the above code also causes repeated sound?

The problem here is: When Person 1 says “Hello,” Person 2 is using external speakers, so “Hello” goes into Person 2’s microphone. This causes Person 1 to hear “Hello” again.

What you described is the echo phenomenon. The browser uses an AEC algorithm when capturing sound, which cancels out the sound it plays itself. This means that when Person 2 sends audio, the echo should already be eliminated.

If you still have issues, could you record the problematic sound using your browser and share it with us for troubleshooting?

You can do this by

  1. Opening Chrome and going to chrome://webrtc-internals/
  2. Expanding the ‘Create diagnostic audio recordings’ option,
  3. Checking ‘Enable diagnostic audio recordings’.

Then, share the recorded audio files with us.

Thanks
Vic

1 Like

Thank for your response.