Question / Help NDI Tools, NDI Camera HX, and OBS Multi-PiP Layout


New Member
I have an issue where if I unhide an NDI video feed from my iPhone via the Palakis plugin for NDI integration, it screws with the audio from every other source, BUT ONLY IN THE STREAM AND THE RECORDING, whereas the local monitoring (if turned on in advanced options) plays back all audio just fine. I found this out on a live stream on Facebook last week.

So I had to find a workaround for it so I could include my iPhone feed as a PiP. And I found a really simple one for multiple NDI cameras, albeit after fiddling for a while with a few steps.

What you'll need:
-NDI Tools (free from the NewTek website)
-Mobile devices with NDI Camera HX installed (free for the next few weeks, as I understand it, otherwise about $20)
-MS Paint
-Multiple monitors (three is nice, but at least two is necessary to keep everything accessible)

1) Install NDI Tools (they're on v4.5 at the time of this post)
2) Pick a monitor which you want to use as your PiP monitor
3) Open OBS on your access monitor and set up sources as follows (in this order from top to bottom):
-Display capture. Set this to your PiP monitor.
-Primary video and audio capture as you like (webcam, desktop capture, etc.). This is what dominates the output screen.
4) Open MS Paint, make the canvas roughly the size of your PiP monitor, set the color to whatever color key you want to use (i.e. "green screen"), and under View, set Paint to fullscreen. This will be the backdrop for your PiP and allow you to key it out in OBS, as it allows windows to float on top of it even in fullscreen mode.
5) Open NDI Studio Monitor, one for each instance you're looking to add as a PiP from your mobile device(s). I'm using one at the moment but may add a second down the road (for single PiP instead of multi, see my note at the bottom of the post). Set it/them up with a hidden window border, sized and placed on your monitor as you want it to appear on your final output, and fit to the video output ratio from your device. I don't know this software well enough yet to say whether there's an automated way to match video output (would be really nice), so I just manually sized it.
6) Back in OBS, add an Effect Filter to the PiP monitor capture for chroma key, set to the color you chose in MS Paint.
7) Crop out the taskbar from the PiP source.
8) Adjust your PiP capture and Studio Monitor until you have it the way you like it, and enjoy your PiP setup!

8) If you have a third monitor available, you can then right-click the Program window in OBS to project to a monitor, then use Virtual Input from NDI Tools to turn that monitor into a webcam and use that "webcam" for video chats in any video chat system that allows you to choose among several webcams! I used this to set up my iPhone camera on Facebook Messenger yesterday, and it worked like a charm! I imagine this would also work with Facebook Live if you chose to go live with a webcam rather than via stream key/paired encoder, but I haven't tested that yet.

If you find your HX feed is lagging too far behind your primary video capture, you can add a Render Delay filter to your primary capture (up to 500ms) to bring them back together.

All you need to do is open Studio Monitor, set it to your camera, then set it to fullscreen on your PiP monitor, and then you'll size and position that in your desktop capture source in OBS. No need for the green screen or all the other setup. And this is going to be more dependable than using an NDI plugin, as this relies on a basic format well-used by OBS and stable for years—though the trade-off is that you require an extra monitor. But that's an easy choice, since you either have one or you don't. No worries about compatibility updates or network glitches.

If you have anything to add, I'll try to check back here in the next couple of weeks to add ideas I think would be useful to the OP.


  • OBS Paint.jpg
    OBS Paint.jpg
    128.2 KB · Views: 225
  • OBS.jpg
    321.8 KB · Views: 228

Heino Falcke

New Member
Some people now managed to compile a native OBS version for the Mac M1 chip (see link below). That brings quite some performance improvements. However, that requires the plugins to also be complied for it. We are happily using the advanced scene switcher. Did anyone compiled it for the M1 yet?