Multi stream camera issues in Video SDK for Windows

I am having issues enabling and controlling the states of multi stream camera devices in 2 situations:

for context:

IZoomVideoSDK* mpVideoSDK = CreateZoomVideoSDKObj();
IZoomVideoSDKVideoHelper* pVideoHelper = mpVideoSDK->getVideoHelper();

Issue 1: not possible to enable a multi stream camera device after joining a Zoom Session;

In short, after joining a zoom session every call made to enable a multi stream camera device with pVideoHelper->enableMultiStreamVideo(dev_id, "anything-here"); fails. The device id being used was acquired from a IZoomVideoSDKCameraDevice* pointer to a device derived from pVideoHelper->getCameraList(), so I am sure the device id is correct, also because I can use the very same device id to select the normal camera device with pVideoHelper->selectCamera(dev_id); (did that just for test purposes). Bigger problem here is that the return of pVideoHelper->enableMultiStreamVideo is boolean, so I either know if it worked or not, don’t really get a reason behind the failure.

The workaround is to execute the code to select the multi stream camera device before joining a session, then it gets enabled and I get no error whatsoever, which leads me to the second issue;

Issue 2: no possible do disable/enable a multi stream camera device when in a Zoom Session.

It is what it says, once the multi stream camera device gets enabled and session joined, any subsequent calls to pVideoHelper->disableMultiStreamVideo or pVideoHelper->enableMultiStreamVideo have no effect whatsoever. I also don’t get any error (get true as return of both functions) which misleads the actual behavior of the operation.

Goal: to be able to enable/disable multi stream camera devices at will being in a Zoom Session or not

I am ok with the workaround of the first issue if I can later disable/enable as I wish.

Which Windows Video SDK version?


  • Device: [e.g. Lenovo Thinkpad p15s]
  • OS: [e.g. Windows 10]

I’m not overly familiar with the Windows SDK - but I will work with the team to try and find a solution for you. Thank you for you patience.

Hello again. I would like to know if you found something in this regard. This is really causing a lot of trouble and delaying a lot the development.

Thanks for the follow-up - pinging the team again, and I hope to have an answer for you.

Ping. Any news on this?

I got some response today - could you check if you passed the id and name of another camera instead of the default one?

For the API:
virtual bool enableMultiStreamVideo(const zchar_t* cameraDeviceID, const zchar_t* customDeviceName);

You will need to pass the id and name of a camera that is not the default camera into this API; otherwise, if we pass the default camera id and name into this method, it will return false.

So there are two things to confirm:

  1. device has more than one camera.
  2. id and name passed into this method are not the default camera.

Hi Kelly, thank you for the reply.

Yeah, it is a valid camera id as stated in the original message and it is NOT the default camera device id, is another camera that I have attached to the system. Also, I am customizing the name, so it is definitely NOT the same name as the main device.

Just to make it clear, as stated in the original post;

I managed to make it work by enabling the camera with a different id (from the default camera device) and a custom name before I join a zoom session. The actual problem is that once I am into the session, I can no longer disable it.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.