Around 10 users encountered transmission issues with the WebRTC server due to their network conditions. After a few retries without success, the Video SDK falls back to the WASM audio solution, then starts audio successfully.
We are continuously working to improve the user experience under challenging network conditions.
Can you tell what the specfic network condition(s) was that caused the issue so we can potentially reach out to their IT team?
When the VideoSdk “falls back to the WASM audio solution, then starts audio successfully.” is there anything I can do to handle that transition? Right now those 10 people just spiral out on a loading indicator and I tell them to dial in…
To help answer my second question below are some snippets from my code:
Can you tell what the specfic network condition(s) was that caused the issue so we can potentially reach out to their IT team?
We found that the MTU size of DTLS received by the WebRTC server was incorrect, which resulted in issues like handshake failures, decryption errors, or incomplete data.
This typically occurs in specific network environments such as VPNs or campus networks, where there are MTU restrictions or interference. These networks may fragment or drop DTLS packets during transmission, leading to such issues.
is there anything I can do to handle that transition? Right now those 10 people just spiral out on a loading indicator and I tell them to dial in…
Currently, fallback will trigger a session reconnecting process. By listening to the connection-change event, users will be notified that they are reconnecting, which makes the fallback process visible to them. We will optimize this reconnection flow in the next version.
Thank you for your help so far. Unfortunately, we’re still experiencing complete audio failure for our KPMG users - they cannot hear anything at all, which suggests the WASM fallback isn’t working as expected.
Could you help us with:
1. Specific network requirements for BOTH WebRTC and WASM? Could you help clarify the requirements for each method? I assume they’re different:
WebRTC: Usually needs UDP 8801-8810, STUN/TURN servers, etc.
WASM fallback: Does this use different ports/protocols (TCP only? WebSocket?)
If we could get exact requirements for both, I can work with KPMG IT to ensure everything is properly configured.
2. How to detect when WASM has also failed? Is there an event or error code that would tell us “all audio methods exhausted”? This would help us guide users to phone dial-in faster.
3. Understanding the root cause: What network configurations would block BOTH WebRTC and WASM? This would help us explain the issue to IT more effectively.
Specific network requirements for BOTH WebRTC and WASM?
WebRTC : We first attempt to use RTC datachannels over ports 8801–8810. If those ports are blocked, we fall back to a TURN server, which typically uses the standard port 443. However, in some network environments—especially VPNs—WebRTC transport over DTLS may encounter MTU issues where packets are truncated. This prevents them from being properly parsed, potentially resulting in unavailable WebRTC audio or video.
WASM fallback: No network limitation.
How to detect when WASM has also failed?
You only need to check whether the user’s final audio type is still ‘computer’. Or, more intuitively, listen for the audio-statistic-data-change event to see if there is any send or receive data.