WebRTC monitoring network and Custom Audio on iOS questions

46 views
Skip to first unread message

Wentao Feng

unread,
Oct 17, 2024, 3:15:06 PMOct 17
to discuss-webrtc

Hi,


We are new to WebRTC and have several questions to ask, thanks a lot for helping!


1. What’s the best practice to monitor WebRTC quality?

We are monitoring these params to check whether we are in good condition currently. 

inboundRTP:

  • fractionLost > 0.1

  • jitter > 0.03

  • roundTripTime > 1


outboundRTP:

  • framesPerSecond < 20

  • targetBitrate < 1000000

  • qualityLimitationReason != “none”


2. How do we control/reduce/monitor the WebRTC delays?

  • Sometimes we will see lag for video/audio for remote person, what’s the best way to debug on iOS to check WebRTC delays? bandwidth may affect the video quality and will it causes seconds delay?

  • Additionally, how do we recover from delays to ensure that both users see/hear everything that each other says/does while keeping them in sync?


3. We are using Mediasoup framework to wrap WebRTC, we don’t need to have STUN, but do we need to use TURN? Will use TURN increase our connection success rate?

  • There’s a small chance that transport is stuck at checking state, does this mean we need to use TURN

  • For this checking state, what’s the best way to restart if this happens? Will restartICE help? Should I create a new room to get all new params from the server to connect?

4. To support custom audio resources (like audio from video / audio from screenshare), is the best practice to create a Custom Audio Module?

5. For WebRTC default AudioDevice on iOS, what’s the structure of that Device? How WebRTC control the noise and audio processing?

Here is our custom device, there are two problems with our custom audio device



Problems:

  • There’s some extra noise compared with the default WebRTC audio device module

  • The audio will be processed like a Robot


6. For Mediasoup/ WebRTC, what’s the best practice for horizontal scaling when we deploy to AWS? Could I use AWS default load balancer or do I have to create my own AWS server to route the same meeting room to the same machine?




Reply all
Reply to author
Forward
0 new messages