For live event productions at our company, we are using vMix, of course. The vMix Call facility most of the time is really awesome, as it provides a very easy and good quality way to bring remote callers into the video production. From my perspective, the killer features of vMix Call certainly are that it requires just a browser and has a built-in way for the video production to provide a return feed to the callers.
Unfortunately, although vMix Call supports screen sharing for callers, those shared content streams REPLACE(!) the camera streams! And even if technology-affine callers would be willing to open two browser tabs, in one tab configure their camera, and in the other tab configure their shared content, vMix Call supports just 8 video streams in total and this way limits us to effectively 4 callers (at least until we use something like a second vMix instance, etc).
But, the swiss army knifes VDO.Ninja and OBS Studio to the rescue! I've crafted together a solution I now named "VDON Call" and which I share as Open Source with you under:
https://github.com/rse/vdon-callIt uses an opinionated VDO.Ninja parameterization and OBS Studio configuration to allow up to 8 remote callers (with both camera and shared content) to be ingested into your vMix video production (via NDI) again. So, I now use VDON Call as a substitute for vMix Call in case I need callers to deliver camera and content streams in parallel.
To have simple and short URLs for both the caller sender-side, the caller receiver-side, and the production sender-side, short "trampoline" URLs are used. As a result, our callers just open Google Chrome and go to a URL like
https://studio.msg.team/...ample/sender/C1/Caller-1 and are immediately part of the video production. The same great user experience which we all like from vMix Call, of course. The glue is a special OBS Studio profile and scene collection which lets OBS Studio act as a WebRTC-to-NDI gateway, so that the vMix video production just can use NDI inputs instead of vMix Call inputs. Nothing more has to be changed...
From a performance point of view, VDON Call allows up to 8 callers, resulting in 16+8 video streams in the underlying VDO.Ninja room (8x2 for the caller camera and content plus 1x8 for the outgoing return feed). The VDO.Ninja parameters were selected in a fashion that the WebRTC-to-NDI gateway can run on a medium gaming PC (but then only runs OBS Studio 27.2 and really nothing else), while the return feed encoding and vMix operates on a separate (medium sized) gaming PC. From a quality perspective, the cameras have to be transferred with 720p24, the shared content with 1080p6 and the return feed with 1080p29.97 in order to cope with the performance constraints.
So, if you also have to support remote callers with parallel camera and shared content and especially don't want to fiddle around with all the required configurations of the swiss army knifes VDO.Ninja and OBS Studio yourself, check out my VDON Call sources...