NDI (Network Device Interface) software

Newtek logo NDI is an open-standard protocol developed by NewTek for connecting multiple devices via IP network infrastructure and sharing video, audio and metadata with low latency. It uses (highly) variable bit-rate video compression to minimise network bandwidth, when possible, yet maintain high video quality.

On this page:- a collection of NDI software utilities produced by Martin Kay from ZEN Computer Services


New website at NDIstuff.uk - go there for up-to-date info!

All the downloads for these NDI utilities are now hosted on the NDIstuff.uk website, a new, more mobile-friendly site intended specifically for, well, NDI stuff :)  You can also view all the ReadMe files to find out more about the apps without having to download each one first.


FACEBOOK Support Group page

To join the group on Facebook, just read and agree to the rules and answer the membership question.



Installation Notes

Just unzip the downloads into a folder and run the respective .exe file(s). Make your own shortcuts if needed. If you get any warnings about missing msvc DLLs, try installing this Visual C 2017 run-time package from Microsoft. In addition, the NDI RTx utility requires the Visual C 2013 runtime to be installed (which includes msvcp120.dll)



NDI Drag&Drop Image Viewer

NDI Drag & Drop Image Viewer

Image files can be drag&dropped onto the preview window to output them as an NDI source, with an optional background, either solid black, 2-colour graduated fill, transparent, or user-supplied (by frame grabbing the current output). Different scaling modes are available for the source images, which can include an optional crossfade transition when loaded. Images are centred on the output and maintain their original aspect ratio in all modes. A "Watch" mode will reload the current image file whenever it is modified. Image formats supported include bmp, gif, png & tif files, at up to 32bit/pixel (i.e. including transparency).

See the video of the Image Viewer in action on the ZEN NDI Software Facebook group page.

All ZEN NDI software downloads are now hosted on the NDIstuff.uk site



ZEN NDI GradBG - Colour Gradient Background generator

The basic functionality is in generating a 4-way gradient-filled image using selectable colours for the four corners of the rectangle, although pairs can be set to the same value in order to achieve a simple 2-way gradient. The gradient image can either remain static or the colours can rotate in a clockwise (CW) or anticlockwise (CCW) direction. A slider control adjusts the period between colour changes (i.e. faster rotational speed as the slider moves to the right).

ZEN NDI GradBG user interface - NDI software from ZEN Computer Services The gradient image can either fill the screen, be horizontally (H-Split) or vertically mirrored (V-Split) as two half-size rectangles, or be mirrored both horizontally and vertically (in Quad mode) using quarter-size rectangles. The Cloud overlay option adds a fixed fractal noise pattern, self-keyed over the background.

There are five Presets which hold different configurations (colours, patterns, etc). The Paste button will copy the last used preset to the current one (e.g. to copy number 3 to number 5, select 3 then select 5 and click on Paste)

On exit, a "last.gbg" file will be created with the current group of five presets, plus it's possible to save a "default.gbg" file from the main right-click drop-down menu in the title bar. If the default file exists, it will be loaded on start-up. Click the "Load last" button to load the last used preset group. Multiple instances of the app can be run on the same PC, with the NDI ident names being sequentially auto-numbered. The "watermark" logo will disappear after several minutes of use.

Colour Gradient background generator for NDI - from ZEN Computer Services

Version 1.0.1.5 adds a few improvements including support for alpha channel masks so that the gradient pattern can not only be used as a background but also as a foreground or intermediate layer (eg as a border or vignette), as illustrated in the video below. (Skip towards the end to see examples of multi-layer usage.)


All ZEN NDI software downloads are now hosted on the NDIstuff.uk site




NDI BugPlayer

The NDI "Bug Player" is intended for the playback of image sequences (with transparency) as an NDI source using RGB+Alpha video encoding. Typically it can take small images and position them within a bigger canvas, preserving the pixel dimensions of the source images within the NDI output (i.e. with no degradation from image scaling). Sequences can be played in various modes (forward/reverse/oscillate), in either one-shot, continuous or timed play/pause modes. See the video in the ZEN NDI Software group page on Facebook to see BugPlayer in use.

All ZEN NDI software downloads are now hosted on the NDIstuff.uk site



ZEN NDI RTx (NDI Receiver-Transmitter)

One of the "features" of NewTek's NDI (prior to the introduction of Multicast capabilities) is that connections between devices are all point-to-point, such that if two receiving devices are connected to a single source sending video, then two streams are required - meaning twice the bandwidth of a single stream. The more connections you add, the more bandwidth is required. Given that NDI is intended for production environments rather than mass-audience video streaming, this is not usually a problem, but it may be desirable for a number of remote stations to be able to monitor a single source - the main output from a switcher, for example. In these circumstances there could be a high bandwidth requirement over the network connection from that source, potentially more than a single node can handle. One solution is to retransmit the NDI stream from another PC on the network via the equivalent of a "Relay" or "Repeater" transmitter (as used in TV/Radio transmission). A kind of NDI "Distribution Amp" if you like.

My NDI-RTx was created because I wanted something to run on a remote PC to perform an "NDI loopback" so I could monitor the effects of a round-trip over a network, measured on the same PC as the NDI source.

After I started using it I then realised that something like this can be used as a sort of "NDI CDN" to distribute network bandwidth by creating remote "splitter-nodes" at various locations and offload work from the switcher PC. Bear in mind that this utility was created for in-house testing so may not be the most robust code, and given that it was intended for simple loopback applications it has not been tested with large numbers of clients, but if anyone out there would like to do some tests with it you can download a test version below. Unzip into it's own folder and install the VisualC libraries (DLLs) if needed and it should be good to go.

All ZEN NDI software downloads are now hosted on the NDIstuff.uk site


The current edition includes a number of extra features, including a freeze-frame function, audio delay and channel re-mapping, local audio monitoring and a video confidence monitor, an overlay function (for adding static or animated image sequences), de-interlacing, image rotation/flipping, has been compiled with the NDI v4.x code, and includes the option of converting the video (+alpha) output into AirSend mode to allow older Tricaster models to make use of NDI sources (eg from graphics systems), or of creating separate NDI "Key & Fill" outputs from RGBA sources. It looks similar to this (although not exactly like it):-

ZEN RTx NDI receiver-transmitter utility GUI

Hopefully, usage is fairly straightforward and there's a ReadMe file in the download with further notes.

After you open the app it should start to detect active NDI source names. Sources will subsequently be added/removed automatically and are accessed via the drop-down menu above the preview monitor..
Note that "Exclude local sources" is ticked by default.

Click on a Source in the drop-down list to make a connection. You will see some stats about the connected source along the top of the window:- IP address/port, Source name, video resolution/frame-rate, audio channels/sample-rate and timcode (if present). The right-hand indicator light will be purple for a video+audio source, red for video-only, blue for audio-only.

Note that multiple copies of NDI-RTx can be run on the same PC, each of which will be allocated a different NDI Source name. (eg the first copy will have an NDI name ending RTx 1, then RTx 2, etc)

All but the earliest versions include an audio meter/monitor function (for Ch1+2), as above. Click on the upper/middle/lower part of the speaker icon to get full-level/dimmed/muted audio output.

This software is supplied "as-is", with no warranty or guarantees of being fit for any particular purpose!

Martin Kay - May 2016 - Apr 2017


 

The NDI "No Audio" Meter

A simple Red-Amber-Green audio display designed to a provide an alert when the audio level of the selected NDI audio stream falls below a certain level. Detection thresholds can be adjusted and the No Audio state both flashes red and generates audio beeps. Also detects of breaks in the stream from the selected NDI source.

Revised version 1.2.0.x now includes a video preview window and has a number of ways to generate "no audio" alerts, including control of USB relays and via NDI. Functionality is otherwise similar to the previous version, albeit with a rearranged layout to the controls, as shown below.

All ZEN NDI software downloads are now hosted on the NDIstuff.uk site


ZEN NDI No Audio Meter with relay control and audio alerts

 


 

Work-in-progress - Quad NDI input sources from Magewell Pro Capture cards

An alternative to NewTek's NDI Connect (Pro), explicitly designed to expose the hardware video processing features of Magewell's Pro Capture family of PCIe cards. Use a Pro Capture Quad card to create four NDI sources, for example.

This particular project is on hold.


 

NDIZender for Magewell Pro Capture cards

NDIZender is based on the NDI Sender example application that was introduced into the Magewell Pro Capture SDK for Windows at the start of September 2016. Prior to that I'd been developing the quad-input "NDI sender" (above), but in many ways the SDK example looked more complete - it had audio input & monitoring for example - so I thought I'd take a bit of time out and see if I could tidy it up and add a few important features, like support for PAL frame-rates, all of which looked simple enough.

Over two months later, after much "tidying up", some debugging of underlying functionality, and the addition of many new controls and features, NDIZender bears only a passing resemblance to the original version in the Magewell SDK.
Even with the release of Magewell's NDI Bridge software, there are some features in this which are not in Bridge.

Download from ZEN Download NDIZender v1.2.0.34 here   (from 2019)


 


 


An NDI Routing Switcher

During the 2016 Christmas break I was experimenting with the Routing functions introduced in v2.0 of the NDI SDK. These functions allow the creation of software routers for NDI signals which can effectively switch between NDI sources with no added latency and virtually zero CPU usage. As a proof-of-concept sample application I created a 6-in-2-out switcher - which seems to work as expected and, for some applications, if only as an auxiliary switcher, could be a really useful tool for some people. Note that the switching can be done from anywhere on the network, and that the actual NDI streams do not have to pass through the computer running the Router software, which effectively just acts a "front panel remote" to the virtual NDI router within NDI itself.


During the summer of 2018 the Router has had something of a makeover. The new version (from v1.2) can be configured on start-up to have anywhere from 6 to 20 inputs and from 2 to 24 outputs. Routing Preset buttons store groups of switch positions, allowing multiple outputs to be switched with one button click. Config files can be saved and loaded, including "save last used on exit" and "load last used on start-up" options. Config files include the data for Routing Presets and for the NDI sources used by each input. Multiple copies of the Router can be run, as long as each is allocated a different "base name" for the outputs, which can be done at start-up and is saved in the config file.


Work started in 2019 on v1.3 to add support for the XKeys XK-24 and the more recent XKE-40 1U Rack-mount keyboard (2 rows of 20 backlit keys). v1.3 also includes a TCP server for remote control by other devices (eg Elgato Stream Deck via Bitfocus Companion). See the ZEN_NDI_Router_protocol.pdf or download a version, but please read the ReadMe file before use as the new features might need some further debugging - feedback welcome :)

All ZEN NDI software downloads are now hosted on the NDIstuff.uk site


Version 1.3.3.22 has been compiled with the NDI 4.1 SDK with both 32 & 64 bit code versions, includes support for the XKeys XK-24 & XKE-40, and also includes the Router Remote application. This is a network client for the main router application which connects to the TCP server in the main Router, and adopts a similar looking user interface, including the same local XKeys support, allowing the Router to be controlled and monitored from up to four additional locations. Version 1.3.4.23 has a couple of minor bug fixes, uses NDI 4.52 and has only the 64-bit version.


In the illustration below, the earlier version of the router/switcher is configured like a 6-input cuts-only A-B switcher, with Preview (B) & Program (A) buses/outputs and a Cut button which swaps the contents of the busses. NB. This no longer works as well as it did when originally created. Back then with NDI v2, the cuts were instant, but as NDI has "progressed", first to v3 and now v4, the switching is no longer instant and therefore the A-B switcher function is not so useful as it was. This is entirely due to the way that NDI works internally, and is not something I have any control over.

 


 

NDI Dual False Colour Monitor

Dual independent NDI video monitors with optional False Colour display mode, selectable from two different LUTs. Supports NDI tally signals. Ideal for use with the NDI Router (above), which would provide the ability to select each of the display inputs from up to six NDI sources, and quickly switch between them.

ZEN NDI Dual False Colour video monitor

NDI Dual False Colour Monitor & Video Waveform display

The (previously experimental) waveform display option has now been consolidated alongside the false-colour LUTs. See the "ZEN NDI Software" group on Facebook for a short demo video, and download the current version here to try it for yourself. Feedback welcome:)

All ZEN NDI software downloads are now hosted on the NDIstuff.uk site

What we're about . . .      ZEN is not a traditional Audio-Visual dealer who started selling computers, nor is it a computer shop that also sells video products. You won't get any salesmen giving you the "hard-sell" when you call, just straightforward advice and information - which for some callers is the knowledge that they don't need to buy whatever it is they thought they needed! Above all you'll be dealing with someone with a wide range of experience and knowledge of both PCs and video production. We're not the biggest, nor necessarily the cheapest, but we are one of the longest established computer/video specialists in the UK.

Company history . . .      ZEN was started in the 1980s by Martin Kay, then working for ITV at Granada's Manchester studios, who built his first 6502-based computer in 1979 from an Ohio Scientific kit, bought in the USA whilst working as a Sound Recordist on a film shoot for World In Action. With the advent of the Amiga, which could be gen-locked to a video source, Martin started writing a variety of video-related software. This included subtitling & tele-prompting, ident clocks, scoring software for sports & gameshows, and specialist software to mimic other computer displays for use in TV film dramas like Cracker, Prime Suspect and A Touch of Frost. Martin left Granada in 1993 to concentrate on his computer-video activities with ZEN, following a natural path into non-linear editing systems, for many years the main business activity, although he still maintains an active interest in video production.

ZEN - Home Page Phone 0161 736 5300 Copyright © 2022 Zen Computer Services.
All rights reserved. E&OE
Revised: 20 July, 2022