NDI latency


copied from an email conversation

Is there anything known regarding the latency of an NDI input to a processed output?



We haven’t performed any latency checks on NDI.

I heard that it is quite significant, but that is to be expected since the textures are getting streamed via the network. If you can use Spout on the same computer it should be better.


It would be nice to find out what the best way (least latency) for live video input would be.

I thought NDI might have a good chance because of it being presented as a low latency video transmission by NewTek.



For live video input, I would imagine using a video capture card would be a good option. Lightact supports Datapath’s products (and probably some others as well).

That, or Spout, I would say.



If you ask me it would be good to find out if there is a subframe input option because then it would become usable in live situations (including Imag - image magnification).



I am a bit rusty in this, to be honest.

Can you describe this in a bit more detail?



Basically it means that the latency of an incoming video being output to a screen thru the lightact mediaserver is less then a frame (20ms if it’s a 50p signal)
You could measure it for NDI in a rather simple way by playing a testvideofile (with numbered frames) sending it thru NDI to the server, output it to a screen and take a picture of the laptop screen playing the file and the output screen (or projector) all together. And then just read out the difference. Off course we are also measuring the latency of the network card/cpu off the sending laptop

Same goes for sdi for example, just bear in mind that if you use a camera, the camera probably generates the most latency itself if it’s a prosumer cam.

Hope this explains it a bit. Also it might be interesting to know which configurations/use of screens/processing in lightact generates more or less latency.

Ps: I replied via email days ago but the response never showed up here hence I post it manually now.


Thanks for posting, @Minimak . I checked why your email reply wasn’t registered and I think I found the reason, so your future replies via email should appear properly.

Now to the subject:
I see, so the ‘subframe’ refers to a latency which is less than one frame, right?

We’ll do some tests when we have the time and I’ll post the results here, but as a general rule: Lightact does everything in one frame, so the whole chain from, say:

NDI reader node in Devices window -> NDI listener node in a Layer Layout -> texture processing nodes (optional) -> Render to canvas node -> canvas -> screens or projectors -> physical video outputs

is done in one frame. Lightact always tries to keep the framerate at 60fps.

Not as precise answer as you probably hoped for, but as I said, when we find the time to do some tests, I’ll post the results here as well. Probably we’ll start with testing Spout in the way you suggested, as it would allow us to eliminate the latency introduced by the network.