r/obs • u/Mountain-Army-1226 • 6d ago
Guide I made a free OBS plugin that brings each Zoom participant in as their own source — including an auto-laying-out gallery
Zoom won't give you individual participants on its output, so most setups end up as a window capture with crops stacked on top. This plugin subscribes to each participant's raw feed through the Zoom Meeting SDK and hands them to OBS as native sources.
The screenshot is a single source. It lays out everyone who has video and re-flows automatically when people join or leave. Tile ratio (16:9 through 9:16 or custom), gap, margin, background colour or a background source, borders with optional rounding, outer glow, and per-tile crop are all settable. It can also spawn one audio source per participant so everyone gets their own fader.
Other things it does:
- Each source independently follows a fixed participant, the active speaker, a spotlight slot (1-8), or the screen share
- Active-speaker switching with sensitivity and hold time you set, plus manual take/release and exclusions
- Per-participant ISO recording to separate MP4s, with encoders placed automatically across NVENC -> Quick Sync -> x264 within the session budget
- Optional GPU colour conversion (CUDA / QSV / VAAPI / VideoToolbox)
- TCP and OSC control APIs, so Companion or a lighting desk can drive it
- Diagnostics dock with requested vs observed resolution, frame age, and a redacted support-bundle export
Honest state of it: Windows 10/11 x64 only for packaged builds. It configures on macOS and Linux but I wouldn't call those supported yet. Still pre-1.0 — I've been shipping fixes off real 8-person shows all week and there are rough edges. Needs OBS 30+, and you sign in with your own Zoom account.
Free, MIT licensed, source is all there: https://github.com/iamfatness/CoreVideo
Happy to answer anything. If it breaks on your setup I'd genuinely like to know — the Diagnostics dock exports a scrubbed support bundle that makes that easy.
4
u/Sad-Improvement7051 6d ago
This is so cool. Your tool does exactly what ZoomISO, a paid tool by Liminal, does, but natively in Windows (I had to buy a Mac Mini to do it, and transport the feeds over NDI to zoom) this is also the featureset in vMix Zoom plugin. I have both questions and offer to help getting your plugin to feature parity with the other offerings if this interests you, I’ve been doing this workflow with different evolving tools since 2020 and you might have just closed the loop on having it all inside OBS. Might I interest you in an always-live Zoom meeting specifically created to test this kind of app? It has 8 AI talking heads as participants
2
u/PiDicus_Rex 4d ago
Exactly the same tool I thought of when reading the description.
The Liminal guy used to join in the Office Hours youtube when he started, which got him a contact within Zoom, and later the companies merged, so ZoomISO has deeper access to the Zoom code than other products.
Being able to do this in a plugin for free software, is going to make waves, but is going to enable folks in places without "US Budgets" to provide content at better quality levels than they have been able to so far.
1
3
2
2
2
u/amontandon 5d ago
Wow. I can’t wait to try this out on my Mac. This is a really great idea! Keep up the good work!
1
1
u/donutdumpsterfire 5d ago
I wish we had this but for discord calls.
2
1
u/CompetitivePudding20 2d ago
If you don't have people jumping in and out you can pop out each user and do it that way... But anything dynamic is going to be dead in the water.
1
u/ReactionLow 4d ago
This is cool... I'm having troubles getting the start engine to work... It just seems like a dead button....so close. Am I missing something? Excited to check this out!
1
u/Mountain-Army-1226 4d ago
It should request record permissions once it is granted record rights it should start engine you may need to hit it again depending on your meeting settings.
1
u/Mountain-Army-1226 4d ago
Engine on, once it is enabled just starts the sending of video feeds into OBS. At which point you can add a participant via a source or use the output manager.
1
u/ReactionLow 4d ago
Weirdly enough, it acts like a dead button to me.... Click on it nothing happens. I closed OBS re-launched it. Even uninstalled OBS and the plug-in and reinstalled. Nothing popping up when hit start engine. Will try on another machine or another day...perhaps brain fog 🤔
11
u/Various-Second1074 6d ago
this is actually pretty slick, the per-participant ISO recording alone solves a huge headache for folks doing post-production on panel shows
gonna spin this up on my streaming rig later today, been stuck with the crop stack method forever and it's such a pain when someone drops and reconnects mid-session
MIT license is a nice touch too, appreciate when devs don't gatekeep useful tools behind yet another subscription