Undestanding the Zoom API to capture participants video stream

@gofmannir, totally understand that it’s a big pain to develop these bots to access live Zoom data.

Currently the only way to access Zoom data live (aside from the RTMP streaming feature) is to essentially join the meeting as a participant and capture the data that way. This means building a meeting bot, and the web/native SDK is the officially supported way to do so.

For video stream, is there any python/nodejs way to capture the steam?

There isn’t any python or nodejs way to receive the stream directly – you’ll need to build a meeting bot to get access to the raw data, which you could then forward to a python or nodejs process if you’d like.

If it’s any help, here’s how to build a meeting bot:

  1. Spin up a server. We recommend AWS, GCP, or Digital Ocean.
  2. Use the Linux Zoom SDK to launch an instance of the Zoom client.
  3. Once you have the Zoom SDK launched, and use the Raw Data functionality to extract the video and audio streams.
  4. This will return the video in I420 raw frames and audio in PCM 16LE raw format, so you’ll need to encode the audio and video yourself afterwards.
  5. Once you have one instance of this working, you’ll need to scale this across several servers if you want to run multiple bots simultaneously, which is required to have bots for multiple meetings.

Finally, another option is Recall.ai . It’s a simple 3rd party API that lets you use meeting bots to get raw audio/video from meetings without you needing to spend months to build, scale and maintain these bots.

Let me know if you have any questions!

1 Like