Zoom meeting SDK uses a lot of CPU and has choppy audio / video

We are using the Zoom meeting SDK in an application that allows our end users to engage in a video/audio call and co-browse a PDF. The version of Meeting SDK that we are using is: "@zoom/meetingsdk": "^3.1.2".

However, the video and audio is often very choppy and CPU and memory usage are very high. We were not sure whether it was an issue with Zoom or our application, so we decided to do some testing against the Zoom sample application here: zoom/meetingsdk-react-sample: Use the Zoom Meeting SDK in React (github.com)

We deployed the application to AWS Amplify and ensured that SharedArrayBuffer was enabled by following the instructions for setting the HTTP response headers.

We tested launching a Zoom meeting with 3 attendees and for each of us, the audio and video was once again very choppy. The CPU and memory usage was also surprisingly high, especially given that we closed out all browser tabs. Finally, we noticed that the quality is not as good as the native Zoom client application.

Here are the specs of our test systems:

  1. Tester 1:
    1. Windows 11 Pro
    1. Processor: Intel COre i7-1065G7 CPU @1.30 GHz
    1. RAM: 16.0 GB
  1. Tester 2:
    1. Windows 10 Pro
    1. Processor: Intel Core i5-10300H CPU
    1. RAM: 32.0 GB
  1. Tester 3:
    1. Windows 10 Pro
    1. Processor: Intel Core i5-5200 CPU @2.20 GHz
    1. RAM: 16.0 GB

It looks like the SharedArrayBuffer is the culprit for the high CPU usage. I have turned off SharedArrayBuffer for a test run and CPU usage is much lower and video / audio quality is good. However, we want to use gallery view and background filters, which is the trade off. Are there any configurations that we can make to limit the CPU usage while still having the gallery view and filters?

@tommy @vic.yang Hi there - Please let me know your thoughts on this. We have been testing with the Zoom-React sample app and it seems to be very CPU intensive. Is there anything that we can do to improve performance? We’re getting ready to roll out the solution to production and as it stands, the Zoom video/audio does not appear to perform well.

@qwong ,

Thank you for posting in the Zoom Developer Forum. We’re glad to hear you’re almost ready to roll out to production. Regarding the CPU issue, could you share the logs that detail what you are experiencing? I’d be happy to share this feedback with the team. Additionally, could you provide more information about your use case? This will give us a better understanding of the experience you’re aiming to achieve.

@donte.zoom Thank you for the response Donte. We want to determine whether the video / audio lag is due to the Zoom Meeting SDK or if it is something that our application is doing. In order to do so, we want to isolate the Zoom component into its own app and it turns out that Zoom has this available for us on Github:

zoom/meetingsdk-react-sample: Use the Zoom Meeting SDK in React (github.com)

We cloned the project, modified it slightly to accept the username, email, meeting ID and passcode and then deployed it to AWS Amplify here:

Zoom Meeting SDK Sample React

We did some testing with Zoom standalone with the following device:

  • Windows 11 Pro
  • Processor: Intel COre i7-1065G7 CPU @1.30 GHz
  • RAM: 16.0 GB

And found the following:

This is with SharedArrayBuffer enabled. With SAB disabled, we immediately saw better results and this was consistent across several devices.

We do need Gallery view, however, so cannot leave SAB disabled. What optimizations can we take to improve performance? Can we disable certain features? Do you need more detaile logs from Chrome developer tools as well?

Hello @donte.zoom ,

I wanted to check in again on this. We do have some paying customers using our solution built on the Zoom Meeting SDK, and they have been having poor experiences with audio and video. We do need some assistance here from the Zoom team as we believe the performance issues lies on the Zoom side. We see the same poor audio / video with just the Zoom standalone React app. Can we please expedite this issue?

Thanks,
Quinn

@qwong,

Thank you for the update! I see that you’re using Web SDK version 3.1.2. The latest version is 3.5.2. For more details, please refer to the change log: Meeting SDK - web - 3.5.2

Try testing with the latest version of the SDK and Chrome browser. We haven’t received any reports of performance issues, so I wonder if there might be another factor involved.

Notably, a fix was implemented for a problem where resources failed to load on the web when the waiting room was enabled for the meeting. Could this be applicable in your case?

In addition, consider enhancing video and audio quality by choosing data center regions for meetings and webinars to improve performance. This feature enables developers to utilize data centers nearest their user base, enhancing overall video and audio quality. The following link provides information on selecting data center regions for hosted meetings and webinars:

Selecting data center regions for meetings/webinars:
https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0060026

@donte.zoom Thanks Donte for the information about the data centers. I will definitely give that a try. With regards to using the latest version of the Meeting SDK, we did test with 3.5.1 using Zoom’s sample React app here:

GitHub - zoom/meetingsdk-react-sample: Use the Zoom Meeting SDK in React

We had the same issues. We can try using 3.5.2 as well. Where can I find the list of issues that were addressed from 3.5.1 to 3.5.2 to see if anything addresses audio/video performance?

@qwong ,

The changes will be listed in the change log. Here is the link to our change logs: