Using Peer to Peer peer-to-peer calling is quite simple and provides transparent audio between users. And during some workaround, we created a conference with a WebRTC source using several PeerConnections. This may not be the best way to do this, but it is possible, and besides, this is sufficient for small groups, such as 3-4 compounds. In our case, each connection works fine, but with some specific devices we get terrible sound quality. For this example, Nexus 6p and Nexus 5 with Android 6.0.
So, maybe this is a very specific question, but this only happens for these devices and with Android 6.0. Therefore, after updating some devices to Android 7.0, solve the problem, but it is still connected. We checked the connection statistics and everything looks good. The packet is not lost with network changes, there is no specific bit rate, etc. Only one difference that we catch is the value of the jitter buffer. On other devices, where we have several PeerConnection, we get about 120 expected and 130 actual. And the difference with this value was about 2 - 5. But in case of problematic devices, the expected jitter is 20 and valid 240. Using the Opus codec from all sides and the approximate bitrate from the SDP settings.
I still donβt know the main reason, and the calculation of Jitter Buffer, this is just a guess. So yes, maybe there is another way to make a conference? Or what strange behavior several PeerConnection uses. Because the quality of the conference is still poor, and we cannot find a solution for a long time. And what is the correct way to solve the problem above? I think that not only did I encounter a conference quality problem or device specifics in this case.
Thanks.
source share