OpenVidu / openvidu

OpenVidu Platform main repository
https://openvidu.io
Apache License 2.0
1.84k stars 463 forks source link

Openvidu | videoconference audio problems #528

Open Monkheim opened 3 years ago

Monkheim commented 3 years ago

Good afternoon! We found some problematic moments with audio. And don't know is it problem on our side or global.

Problem: When user listen some audio from webrtc player and speak in one time total sound for third user is very poor.

Case: how we test.

Openvidu - 2.15.0 jar Kurento - 6.14.0 All installed by your manual https://docs.openvidu.io/en/2.11.0/deployment/deploying-ubuntu/ but with new versions. Docker is not used. Only for recording.

Simple case with 3 users. Important! As audio source we use real audio speaking from euronews live channel. It is not song or something else. It is natural speak. User1 - publisher User2 - publisher User3 - just listen Ok. We use one pc with open tab on youtube euronews live stream. From this pc we get audio and connect to second pc(broadcaster) by minijack cabel. Run broadcaster where mic is audio input (euronews). Name him user1. User2 and user3 in this session see user1 in session (video+audio). Audio quality is good.

Next, User2 want to stream his audio (or maybe with video, it is important). He push stream in this session too. And in this time he listen stream from user1. User3 see and listen all streams.

And when user2 pushed his stream user3 see a lot of problems with audio. Description. In audio of user2, user3 listen mixed audio from user1 and user2! But user3 on his page mute user1. And sound quality is very poor. First strange thing is mixed audio in user2. Second strange, sound gurgles, tail off and disappear.

Firstly, as I said we found it in our application, but today we test it on your demosite here - https://openvidu.io/demos#2 (it is basic videoconference) and this problem too.

Scheme I think, understand.

Maybe you know about it. And can help us to fix it. Hope.

micaelgallego commented 3 years ago

Echo cancellation causes that when some user is speaking, other users can not be heard.

Test if the same problems appear when all participants uses headphones.

Test with other video conference services like whereby.com to see if the behaves exactly in the same way or not.

Regards

Monkheim commented 3 years ago

Good afternoon, Micael Thank you for your answer. But it is not this case. On all pc we use headphones and don't use local sound. That why it is not echo cancellation (but seems like it). that case what I described upper, we use for translator. real person use pc, listen main audio stream with video in headphones and translate it into another language in that session. An listeners can listen main stream or translator. They use headphones too. And when translator start stream his mic, the sound very poor. And in translator channel everybody listen and main audio channel that it is not correct! But yesterday we found that this problem and it simple videoconference. You can check it by your self. 1) Open https://openvidu.io/demos#2 2) Use two pc as clients. But don't speak in mic by yourself, use audio track. For example you can open youtube live stream and share tab with this audio to session. On second pc do it too. but use another live stream. It is help you to understand that channels mixed with poor quality. 3) use third pc in this session to listen this conference. You see audio quality from first step! Thank you

micaelgallego commented 3 years ago

Let me see if I understand correctly. When you use microphone the audio quality is ok, right? But when you use browser tab sharing with a youtube video, the audio quality is bad, right?

Just to know if the problem is in the OpenVidu side or in browser side, can you test the same scenario with whereby.com or other WebRTC platform please?

Monkheim commented 3 years ago

No, it is not correct. Sorry if I describe very confused. If I use microphone the audio quality is ok. If I use microphone and listen other sound (from other user) in this session, sound from my microphone is bad. It is not share problem, it is global audio.

I didn't test it on other platforms yet. but I will write here when it done.

Monkheim commented 3 years ago

Interesting fact. If I as publisher don't listen any others streams or player mute, my audio is good. But when I unmute other player (listen it audio) audio from me is bad. It is only work in one tab of browser (i use chrome 85 last build). But when I open new copy of browser (not tab) I can listen sound from others users and speak in my mic. And quality from my mic will be good!

micaelgallego commented 3 years ago

It seems the problem is browser related.

Can you test with firefox?

Monkheim commented 3 years ago

No. Ok, try to test in firefox

Monkheim commented 3 years ago

Good afternoon! Ok, I tested this case in Firefox 80.0 last build. In a few words, the problem is present too, but sound better then in Chrome. I found old ticket. It sound like my problem. And strange what no one asked about it before. https://bugs.chromium.org/p/webrtc/issues/detail?id=4292

Please, test it on your's pc.

Monkheim commented 3 years ago

thought what i wrote about it previously, but now see what it is not true. Ok, one more strange thing. When user1 listen incoming audio and speak in his mic (outgoing audio), user2 on his pc listen stream from user1. But he listen not only talk from user1 from mic, user2 listen mix of audio from user2 mic and that incoming audio that user1 listen. It is gone, if user1 mute incoming audio.