Getting raw video frames of several participants

Hello!
https://marketplace.zoom.us/docs/sdk/native-sdks/windows/raw-data/
This article describe how create callback when raw video frame receive/ As I understand, I should implement IZoomSDKRendererDelegate and create instance of it. But still not enough information for me. Should I create implement IZoomSDKRenderer interface?
Do I understand correctly that this interface stores the delegates of the participants and calls the callback for each separately? What should the subscribe method do? Are there any examples of raw video recording, or a more precise algorithm that I can follow? Can I modify the demo that comes with the SDK for rapid prototyping?
Thanks!

Windows Meeting SDK version: v5.9.1.2625

**Device:

  • Device: desktop
  • OS: Windows 10

I read the guide again and now I think is not necessary to implement the interface, because it is implemented in the SDK by calling createRenderer(). And I need to create a pointer to the IZoomSDKRenderer and pass the pointer to it into this function. Did I get it right?
But I’m still not clear how callbacks work: one callback is called for all participants? Then how to separate streams of video? Should I use getUserId() of IZoomSDKRenderer?

Hi @ruslikc, thanks for using the dev forum.

In order to receive the raw video data for a user, you would need to get the frames through the onRawDataFrameReceived callback. When you subscribe to a specific user’s raw data, this callback will be invoked each time a new frame is received.

Thanks!

Hello! Thanks for respond!

Can you explain me algorythm for start subscribing video of all participants? Information in documentation poor for me.
Now my rpogram subscribes to only one participant, when meeting has more 2 participants. And i do not understand why.
Thanks!

I forgot that I only subscribed to one id (the subscribe method of the renderer class). I then looped through all the IDs and subscribed to them using the same renderer instance. And I also found that when I subscribe to a new one, I unsubscribe from the previous one. Thus, each participant needs to initialize their own renderer. I did it and it works!
Perhaps it is worth considering these nuances in the documentation …
Thanks!

Glad to hear you were able to resolve this!

We absolutely understand that the current state of our Meeting SDK documentation is not great and are working on creating more comprehensive documentation in the future. If you run into anything else that is unclear, we’re always here to help. :slightly_smiling_face: