NDI Feed Drop

Today I discovered that NDI feeds between two instances of Touch are dropping signal.

On the same computer, I have two instances of Touchdesigner open. In the first instance, I am sending an NDI feed. In the second, I am receiving it. This is working as intended except that the feed drops every ~5 seconds. During the drop, the error message on the NDI in node reads “Unable to find the selected source name.” Moments later, the feed reconnects until it drops again… this process continues forever.

I was curious if this problem was related to Touch specifically or NDI so I have tested NDI feeds using Newtek NDI Tools and OBS on the same machine - this performed without an issue. Therefore this appears to leave this as a Touchdesigner specific issue.

What could be interrupting the communication between the instances of Touch?

(This works fine on my Laptop - just not on my desktop)

Upon further testing - NDI out from TD works flawlessly when being received into OBS or Newtek tools.

Thus, the problem is very specifically located to the NDI IN node within Touchdesigner.

Please, I am looking for an answer to this problem.

Thanks

Hi rrmallin,

It’s usually helpful to know a few other things when trying to track down what might be happening in a network.

It’s always useful to know:

Operating System
TouchDesigner Version
TouchDesigner Build
Stable or Experimental

In the case of something like NDI - it’s often useful to know the resolution of your output image and a few other pieces - are you running a real-time scene, or just sending played back video? Do you have a simple version of the project you can share, or can you replicate the issue by stripping out all of the other pieces… essentially trying to narrow down the process to exactly what might be causing a problem.

Hi Matt!

Sorry if my previous explanation was unclear - I will try to lay it out more thoroughly.

OS Windows 10.
Happens on all stable versions TD 99.
I’ve tried most recent (TouchDesigner099.2018.22270.64-Bit)
As well as the first introduction of NDI (TouchDesigner099.2017.4060.64-Bit.)
Resolution on the feed doesn’t matter - I have tried 1280x800 to 4k - same issue.

I am confident through trial and error that the problem is most certainly on my end, but specifically with Touchdesigner and the NDI IN node.

Anyways, here is the low-down…

I am trying to bring an NDI feed into an instance of Touchdesigner. Regardless of where the NDI source is generated (another instance of TD, OBS, Newtek tools, etc.) when it comes into Touchdesigner via the NDI IN node the behavior does the following;

I select the feed from the drop down menu;
The source loads and I can see it;
The feed is lost after approx. 5 seconds and an error icon appears on the node;
The error says “Unable to find the selected source name;”
The error goes away a couple seconds later;
The feed reconnects;
Repeat.

This error doesnt not occur if I send the same NDI feed from OBS to Newtek Tools or the vice versa - it only happens via the NDI IN node within TD.

My best guess is that there is some sort of Windows setting interrupting the communication specifically within TD - but is that even possible?

Please let me know if I can be more clear or if you need more information.

Thanks Matt for taking the time to write!

-Rob

Hey Rob,
Can you try build 2018.23760? We’ve upgraded to the latest NDI SDK in that version.

If you have two nodes connected to the same source, do they both disconnect at the same time/reconnect at the same time?
What if they are in different processes, is the behavior different?

Hey Malcolm,

I have tried a variety of builds including 2018.23760, and as mentioned, I am working on a fresh format.

When I have two NDI feeds, they both disconnect and reconnect at the same time.

-Rob

Hey,
Is that true for when you have two NDI In TOPs in two different TD processes?

With 1 instance sending two feeds to two separate instances; the feeds lasted a lot longer before dropping. However, they did drop, and do so at the same time even in separate instances.

Interesting. Any chance you can do similar tests with 2 computers, with each one taking a turn being the sender? See if it fails in one case and not the other?

I could run that test later today, unfortunately unable to at the moment.

In the case where I run 4 instances of TD however…

TD1 Sends, TD2 Recieves

TD3 Sends, TD4 Recieves

Both fail, and lose connection, but not at the same time.

When it was

TD1 Sends x2 Feeds, and TD2 + TD3 receive seperate feeds

Both Fail, and lose connection, at the same time.

Interesting. To me that would imply the issue is on the sending side possibly…

Except that if the feed is received from TD1 into something like, Newtek Tools or OBS with NDI plugin… there is no drop.

Hello Malcolm

Today I attempted to send a feed from my laptop running OBS with NDI plugin to my desktop via ethernet. This did not work, but I believe that is related to a networking issue. As a side note, I spent a couple hours trying to fix an issue where I was able to ping my laptop from my desktop, but not the other way around.

In any case, this would only provide information, what I need to do is have my NDI feed by rock solid running on a single computer.

Any new developments or thoughts on your end?

I know it’s a silly question, but have you made sure that the firewill in Windows is turned off for TouchDesigner? That one has bitten me before, so I figured it’s worth asking.

I suspected that as well, and have turned them off.
Problem is even after turning off Windows Firewall - I still couldn’t ping my PC from Mac, but I could ping my Mac from my PC.

So is it really off despite it saying it is? I dunno - pretty frustrated.

I feel like figuring out what’s going on there is the first step to solving this. Hard to say why that’s happening though…

I was able to set-up a network where I can send NDI from computer A to computer B. The results are interesting…

Sending NDI from A to B results in the same behavior where the feeds drops every few seconds.

Sending NDI from B to a second instance of TD on B gives a rock solid result with no drops.

Sending NDI from B to A gives a rock solid result with no drops.

Therefore the problem must be in the sending of NDI from computer A.

Also - I was sending NDI via OBS from A to B. Catching the NDI in B through TD shows a black screen during disconnect, receiving in OBS has no black out but hard hiccups (probably holding last frame on drop.)

Thus I think this is a problem either in Networking or the Codec? But this is a fresh format and a fresh install of all drivers/codecs.

Thoughts?

can you replicate the results of your last test using only the free tools from newtek? (receive with NDI Studio Monitor & send with NDI Test Patterns). This would be a good way to track if it’s a network/firewall issue.