Resource icon

obs-ndi - NewTek NDI™ integration into OBS Studio 4.9.1

br8kpoint

New Member
Is there any way with the ndi plugin to control the settings of the ndi camera app (specifically zoom) on iphones or the old androdi app?
 

sandervg

New Member
Question: I'm actually using this to grab the NDI output from my Avid Media Composer software, and it's working perfectly! The only issue I'm having is that while I can use the OBS VirtualCam to output the video to Zoom, I get no audio. I'm seeing that I could also run an NDI Output from OBS. Would this carry the audio then as well? I'm been having a real problem getting audio out of OBS and into Zoom. (Most likely a Zoom problem, but curious if anyone knows.)
For this you can use the VBcable application. Set your OBS monitor to that "virtual output" and use that "virtual input" in zoom. Works perfect. https://vb-audio.com/Cable/
 
For this you can use the VBcable application. Set your OBS monitor to that "virtual output" and use that "virtual input" in zoom. Works perfect. https://vb-audio.com/Cable/
The other option is to use the NDI Output instead of Virtual Cam. You then need to run the NDI Virtual Output application to create your 'virtual webcam' from the NDI Output source. Your system will have an NDI Line Out audio device which automatically carries the sound from the NDI source you've selected in Virtual Output. Then you use this NDI Line Out as your audi input from Zoom.
 
I should add that the advantage of this method is that you are not sending Zoom your monitor out, you're sending it your 'program' out, so you still have the option of having audio inputs set to 'monitor off', 'monitor only' or 'monitor and output' to differentiate what you want to be hearing yourself Vs what your audience is hearing.
 

tschwenke

New Member
I broke something... I actually haven't tried to broadcast yet, but I rebuilt my windows machine (the output source) and in doing so was reinstalling OBS on it and saw new versions of NDI for linux as well so wanted to update that side as well (that is where I grab the source and broadcast, source from windows box to ubuntu box to send out).

Looking at my log before I see:
Code:
01:02:58 PM.509: [obs-ndi] hello ! (version 4.7.1)
01:02:58 PM.509: [obs-ndi] Trying ''
01:02:58 PM.509: [obs-ndi] Trying '/usr/lib'
01:02:58 PM.509: [obs-ndi] Found NDI library at '/usr/lib/libndi.so.4'
01:02:58 PM.510: [obs-ndi] NDI runtime loaded successfully
01:02:58 PM.511: [obs-ndi] NDI library initialized successfully (NDI SDK LINUX 11:53:05 Sep 11 2019 4.0.0)
I ran both libndi4_4.5.1-1_amd64.deb and obs-ndi_4.9.0-1_amd64.deb, both seemed to install correctly but I don't see the similar lines in the log, I only see this
Code:
01:31:18 PM.888: Source ID 'ndi_source' not found
01:31:18 PM.888: Failed to create source 'TAS-Travis-OBS'!
In the section of VLC found, VLC video source enabled I don't see obs-ndi.so like I do in the older log.

Thanks for any help in fixing what I broke! I can attach logs if necessary, but I think this might be an easy one for someone more skilled than me.
 

tschwenke

New Member
OK.. I don't see how to edit above.. But I must have scrolled down when I downloaded and saw there is a 4.9.1-1 vs the 4.9.0-1, updated that and it seems to work!

Above SOLVED
 

MichaelB

New Member
I'm having a/v desync issues with a PTZOptics camera that's supplying both audio and video over NDI. The desync drifts around from 0 to 800ms. I just noticed the latest OBS-NDI changelog (4.8.0 -> 4.9.0) says "The "Sync" setting now defaults to "Source Timing" - This is the best option to keep audio and video synced together." So...I've been using the Network sync setting, so will switch things to Source & hope this corrects things.

Question: What actually does the Sync setting do, and exactly what is different about 'Source Timing' vs. 'Network'? I'd like to understand what's going on and not just blindly be clicking options! Thanks.
 

MichaelB

New Member
Perhaps related to my a/v sync issue (previous post), my OBS logfile shows these "audio buffering" entries upon startup. My OBS audio sync offset is 0, so I'm wondering what's going on here. Thoughts?

09:18:04.414: ==== Startup complete ===============================================
09:18:04.416: All scene data cleared
09:18:04.416: ------------------------------------------------
09:18:04.465: [obs-ndi] started A/V threads for source 'PTZOptics 30x NDI (Channel 1)'
09:18:04.466: [obs-ndi] A/V thread for 'NDI™ Source' started
09:18:04.466: Switched to scene 'Scene'
09:18:04.467: ------------------------------------------------
09:18:04.467: Loaded scenes:
09:18:04.467: - scene 'Scene':
09:18:04.467: - source: 'NDI™ Source' (ndi_source)
09:18:04.467: - source: 'Text (GDI+)' (text_gdiplus_v2)
09:18:04.467: ------------------------------------------------
09:28:50.064: adding 213 milliseconds of audio buffering, total audio buffering is now 213 milliseconds (source: NDI™ Source)
09:28:50.085: adding 149 milliseconds of audio buffering, total audio buffering is now 362 milliseconds (source: NDI™ Source)
09:28:50.106: adding 128 milliseconds of audio buffering, total audio buffering is now 490 milliseconds (source: NDI™ Source)
09:28:50.126: adding 128 milliseconds of audio buffering, total audio buffering is now 618 milliseconds (source: NDI™ Source)
09:28:50.168: adding 64 milliseconds of audio buffering, total audio buffering is now 682 milliseconds (source: NDI™ Source)
09:28:50.210: adding 42 milliseconds of audio buffering, total audio buffering is now 725 milliseconds (source: NDI™ Source)
 

maxime.hiez

New Member
Hi guys,
I'm using OBS and NDI to capture the participants' videos in a Teams Live Event so I can build a single video with all of them and then send it to Teams so I can stream this to the audience.
But there is a 1s delay between the lips and the video. I tried to play with the "lips offset" feature. But since it's a single stream, it does change anything. Any ideas why ?

Also, I want to play a video (mp4) from OBS to Teams. I have the video and the sound in OBS, but in Teams, I just have the video, no sound. Any idea how I can get it ? I was thinking, maybe configure something to tell the system that my input is my OBS output but ... no clue.

Thanks for your help :)
 
Perhaps related to my a/v sync issue (previous post), my OBS logfile shows these "audio buffering" entries upon startup. My OBS audio sync offset is 0, so I'm wondering what's going on here. Thoughts?

09:18:04.414: ==== Startup complete ===============================================
09:18:04.416: All scene data cleared
09:18:04.416: ------------------------------------------------
09:18:04.465: [obs-ndi] started A/V threads for source 'PTZOptics 30x NDI (Channel 1)'
09:18:04.466: [obs-ndi] A/V thread for 'NDI™ Source' started
09:18:04.466: Switched to scene 'Scene'
09:18:04.467: ------------------------------------------------
09:18:04.467: Loaded scenes:
09:18:04.467: - scene 'Scene':
09:18:04.467: - source: 'NDI™ Source' (ndi_source)
09:18:04.467: - source: 'Text (GDI+)' (text_gdiplus_v2)
09:18:04.467: ------------------------------------------------
09:28:50.064: adding 213 milliseconds of audio buffering, total audio buffering is now 213 milliseconds (source: NDI™ Source)
09:28:50.085: adding 149 milliseconds of audio buffering, total audio buffering is now 362 milliseconds (source: NDI™ Source)
09:28:50.106: adding 128 milliseconds of audio buffering, total audio buffering is now 490 milliseconds (source: NDI™ Source)
09:28:50.126: adding 128 milliseconds of audio buffering, total audio buffering is now 618 milliseconds (source: NDI™ Source)
09:28:50.168: adding 64 milliseconds of audio buffering, total audio buffering is now 682 milliseconds (source: NDI™ Source)
09:28:50.210: adding 42 milliseconds of audio buffering, total audio buffering is now 725 milliseconds (source: NDI™ Source)
Currently chasing down an issue with buffering and latency on my system -from what I can tell it's often much more related to your PC then specifically about the particular source it references. Dodgy Sound Blaster X3 drivers have turned out to be the source of these kind of buffering increases for me. I thought it was a bug with OBS.Ninja but it was just being attributed to that source.

Also check if your CPU usage is topping out and the system isn't coping.
 

MichaelB

New Member
Currently chasing down an issue with buffering and latency on my system -from what I can tell it's often much more related to your PC then specifically about the particular source it references. Dodgy Sound Blaster X3 drivers have turned out to be the source of these kind of buffering increases for me. I thought it was a bug with OBS.Ninja but it was just being attributed to that source.

Also check if your CPU usage is topping out and the system isn't coping.
Yesterday's test: start system, no other apps running, no streaming or recording, just a camera and audio source. CPU and GPU idling at under 25%. I walk away and just leave it going. Two hours later (by the log file) OBS starts adding a bunch of these audio buffering delays. Why? Could a Windows process have engaged at that point to peg the CPU? Possible, I guess. But I've dug around and it's not related to a virus/malware scan or Windows Update.

So I'm just left wondering...and frustrated. But this is a deal-killer on Sunday mornings. Last week my audio & video went out of sync by 800ms early in the church service that was streaming to a couple of hundred people. Ouch! And I'm just sitting here hoping it doesn't happen again...and not feeling very confident about that.
 

MichaelB

New Member
I'm having a/v desync issues with a PTZOptics camera that's supplying both audio and video over NDI. The desync drifts around from 0 to 800ms. I just noticed the latest OBS-NDI changelog (4.8.0 -> 4.9.0) says "The "Sync" setting now defaults to "Source Timing" - This is the best option to keep audio and video synced together." So...I've been using the Network sync setting, so will switch things to Source & hope this corrects things.

Question: What actually does the Sync setting do, and exactly what is different about 'Source Timing' vs. 'Network'? I'd like to understand what's going on and not just blindly be clicking options! Thanks.
Update: Changing Sync setting to Source Timing did not resolve this.
 

Vrijheidradio

New Member
Hi, I'm in Pop_OS and can't get the NDI installed.
When I install the downloaded packages I get an alert saying dependency missing.
When I do in manually in the terminal I get this message at the end:

CMake Error at CMakeLists.txt:20 (find_package):
By not providing "FindLibObs.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "LibObs", but
CMake did not find one.

Does somebody know how to fix this?
 

bc45

New Member
Is it possible to leverage an NDI Discovery Server with this plugin to provide the list of sources?
 

jshea2

New Member
Before I downgrade NDI back to 4.8, did anyone ever find a solution to the Audio/Video Desync issue for the latest version?

Maybe the latest OBS RC version fixes this, or maybe changing the audio channels, anything at all honestly?

The current version is unbearable, since sometimes the Audio won't be the one Desyncing, but the Video instead and it does that over time, so you can't even put a filter delay correctly.
Hell, just changing scenes sometimes automatically starts the Desync issues. I can't even use the StreamFX shaders, because if I do, NDI has a heart-attack and can sometimes stop sending frames (imagine an overloaded encoder on the second PC).

I ended up spending hours turning everything into a Media Source to help NDI, but even sometimes a Media Source is too much and will end up Desyncing it.

The only solution I found was sending the Mic, Audio and Video each as a separate NDI filter (and the Audio set at 48 khz, I don't know why, but this delays the desync issue by quite a while) but as soon as I do that the second PC ends up using 2x the processing power (instead of 20% for a small scene, it boosts to 40% and overloads the encoder), and it makes using scenes pointless since NDI filters don't pick up on the changes of scenes automatically.

I'm vexed, and really hoping someones had solution to this. Cheers in advance.

I also like to divide the workload, so I have a dedicated stream computer connected via LAN with NDI, but I'm having the exact same issue. Every stream I try and somehow workaround / "fix it", basically going to NDI Output and unchecking and rechecking the output. I've also tested each setting, network or internal, normal safe or low latency experimental mode, but none of these seem to do much. The problem i have with doing the dedicated NDI is when the audio isn't in a scene it's still outputting, so i just need the master NDI source. Any suggestions would be appreciated. I'm going from a Mac to a Mac. is this also an issue with windows?
 

EthanNixon

New Member
Hello,

I have been using NDI for Windows for a while. I decided to get the new MacBook with M1 since it seems to be a really powerful computer. However, I cannot get the NDI runtime/plugin to work with OBS. OBS works perfectly fine, but it cannot detect the NDI plugin/runtime. I suspect this is because of Rosetta, but I am not experience with this at all. Is there anything I can do to make this work, or is there plans to support the Apple Silicon?

Thanks!

Edit: Dug into it a little further. It appears the only issue may be that the CPU is "unsupported". So I don't know if there is anything I can do to bypass that, or if we can include the Apple M1 CPU in the next version.
 
Last edited:

Sergio85

New Member
Thanks for this great plugin!

I've got one question regarding alpha-channel. I would like to stream a game capture with alpha channel into UE (using NDI-Plugin for Unreal Engine). The checkbox "allow transparency" is checked, the preview seems correct. Unfortunately, Unreal seems not to receive these alhpa-values, as the video texture remains black.

I've tested the UE-Plugins with semitransparent images with NDI Test Patterns, which has worked just fine.

Did someone already come across this issue? Am I missing something?

Thanks for your support!
 
Top