Video SDK - web version - Mac OS performance

We are in the process of migrating our react web app from Twilio video to Zoom video SDK and are experiencing some performance issues. Specifically the problem is most obvious when from the same machine there are two instances of the app broadcasting video. The UI and the whole Chrome app window becomes slow and unresponsive. The same scenario with Twilio does not cause any performance issues.

We have tested using the example app you have here github(dot)com/zoom/videosdk-web-sample without any modifications other than entering our API keys and observed similar behaviour. This is happening on Chrome on Mac but not on Windows (also different hardware). When visiting localhost:3000/video from the same machine with two users and turn the webcam on for both after 2-3 minutes the laptop fans start going faster and the Chrome tabs start becoming almost completely unresponsive. While this is happening the activity monitor reports a kernel_task process of being at 400% CPU usage. Closing at least one of the tabs restores the machine to a usable state.

The details of the Mac machine are:

CPU: 2.2 Ghz 6-core Intel Core i7
GPU: Radeon Pro 555X 4GB
RAM: 16GB 2400 MHz
OS: Sonoma 14.5

Are there any known incompatibility and/or performance issues with Mac OS?
What are the minimum system requirements for Zoom video SDK for the Web?
Any other recommendations to improve performance?

Hey @kimdev

Thanks for your feedback.

The current video solution (based on WASM) has some performance issues on low-end devices. We will soon offer an alternative video solution (based on WebRTC), which will improve the video experience on low-end devices.

Could you share some problematic session IDs with us for troubleshooting purposes?

Thanks
Vic

Hi @vic.yang

Thanks for your reply

Do you know what is the timeline for that alternative video solution as we might have to plan around this from our side.

Here is a session id: lmynq8H4RCm2KRXpUuY9rg==

I entered with one normal chrome tab and one incognito. After about 3-4 minutes of the second incognito tab user entering the session and turning the webcam on the machine starting having a degraded performance. The UI (button at the bottom of the screen, camera options arrow,etc) started lagging more and more to the point it completely froze. Again I saw the kernel task reaching 1000% at some point.

This is a link to some screenshots from my activity monitor (it wouldn’t let me attach pictures here directly)

imgur(DOT)com/a/1g9tqQp

Thanks

Hey @kimdev

I’m glad to hear that you’re interested in our new video solution.

It will be rolled out later this month, so stay tuned!

Thanks
Vic

1 Like

Thanks @vic.yang that’s good news

Did you find anything interesting from your end regarding that session id ?

Hey @kimdev

Yes. We analyzed the logs for this session ID and found that about 3 minutes after joining the session, the CPU usage increased significantly. This caused many video frames to decode and timeout, leading to failures.

You might have noticed that the video started to freeze around that time.

Thanks
Vic

1 Like

Hi @vic.yang

What could be causing this CPU spike? Why would this only happen with Mac OS but not Windows? Is there something different between the two systems in regards to zoom video SDK?

Any recommendations to avoid this from happening?

Thanks

Hey @kimdev

As far as we know, it is not specific to a particular platform. The issue mainly arises on low-performance devices.

Recommendations for this is to avoid running multiple instances on such devices.

Thanks
Vic

Thanks @vic.yang

Unfortunately we can’t avoid that as we are in the active development stage and in order to test scenarios with multiple participants we need to have multiple instances from the same device.

Has a date been set for the new webRTC version of the SDK? Will the new version change the current API of the SDK?

Hey @kimdev

Thank you for sharing your scenario.

The WebRTC video solution will be gradually rolled out. We will provide a detailed introduction and migration guide.

If you render video using individual HTML elements, there won’t be any API changes.

Thanks
Vic

1 Like

Hi @vic.yang

Is there any news on the new WebRTC video solution?

Thanks

Hey @kimdev , stay tuned, we have a release coming in August that will help you.

Best,
Tommy

2 Likes