Which video mode is recommended: WebRTC Video or WebAssembly Video

Video SDK Type and Version

Web v2.5.0

Description

I understand that the Zoom Video SDK offers two video modes: “WebRTC Video” mode and “WebAssembly Video” mode. However, I could not find any documentation describing the advantages and disadvantages of each mode, so I’m not sure which one is currently recommended.

Could you please let me know the pros and cons of these two modes, and which mode Zoom currently recommends?

In addition, I have observed the following behavioral differences in our application:

  • In WebAssembly Video mode, video is rendered on a canvas. Since the SDK monitors the player’s display position and renders the canvas to match its coordinates, size, and some style properties, there is a noticeable lag when applying styles or resizing, which makes styling more difficult. CPU usage also tends to be slightly higher than in WebRTC mode.
  • In WebRTC Video mode, a <video> element is used, which makes style adjustments easier than in WebAssembly Video mode. CPU usage also tends to be somewhat lower.

Thank you in advance for your help — any insights would be greatly appreciated.

Please note that this post was translated with the assistance of AI, so I apologize if any part is unclear. If anything is ambiguous, please let me know and I will be happy to clarify.

Error?

N/A — this is a question about documentation and recommended usage rather than a specific error.

Troubleshooting Routes

  • Reviewed the Video SDK documentation, but could not find a comparison between the two video modes (WebRTC vs. WebAssembly).
  • Tested both modes in our application and compared rendering behavior and CPU usage as described above.

How To Reproduce

  1. Authentication method / app type: Video SDK for Web (v2.5.0), integrated into our own web application. Authentication: (JWT / OAuth — please specify)
  2. Errors: None — this is an inquiry about the differences between the two video modes.
  3. Browser/client type and version: (please fill in your actual environment, e.g., Chrome 138.0.7204.100)
1 Like