Configuring NDI Streams

Network Device Interface (NDI) is a royalty-free software standard developed by NewTek to enable video-compatible products to communicate, deliver, and receive broadcast-quality video in a high-quality, low-latency manner that is frame-accurate and suitable for switching in a live production environment.

NDI was designed to deliver 1080i HD video at VBR data rates typically around 100 Mbit/s. Zixi Broadcaster uses an NDI library to read uncompressed frames from the NDI stream and pushes them to the Zixi Broadcaster's transcoder. The transcoder can then transcode the uncompressed stream into a transport stream using one of the available codecs, such as H.264 or H.265 video and AAC or Opus audio.

Zixi Broadcaster supports the following flows for NDI:

  • NDI Input – the NDI source stream, which is uncompressed, is transcoded via the Zixi Broadcaster transcoder into any one of the available codecs. The transcoded stream will be available as an Input Stream when creating an Output in Zixi Broadcaster.
  • NDI Output – Zixi Broadcaster can transcode a TS stream into an NDI output using Raw video and audio profiles. The NDI output is configured in the transcoding profile itself, so there is no need to create an NDI Output. When the input stream is transcoded, it becomes available to be pulled by NDI enabled devices.     

A typical deployment involves ingesting NDI to a Zixi Broadcaster through LAN at one location and then using Zixi Broadcaster to compress the stream into high quality AVC/H.264 or HEVC/H.265. The stream is then delivered to another location over the public internet to any distance using the reliable, low latency Zixi protocol and then at the receiving location the stream is decoded by a Zixi Broadcaster and broadcasted on the local LAN as NDI again.

While a single 1920×1080@30 fps NDI stream may require 125 Mbps of bandwidth on the local network, once it is compressed for delivery with Zixi it will only require 10 to 15Mbps using HEVC/H.265 and no perceptible quality loss, to move the stream over the public internet