Difference between revisions of "NDI"

From Derivative
Jump to navigation Jump to search
m
Line 28: Line 28:
  
 
NDI provides a useful mobile application to stream NDI from phones. Search for Newtek NDI on the stores.
 
NDI provides a useful mobile application to stream NDI from phones. Search for Newtek NDI on the stores.
 +
 +
== NDI Network Devices ==
 +
See https://support.newtek.com/hc/en-us/articles/217662768-NDI-Network-Interface-Settings
 +
 +
See https://233b1d13b450eb6b33b4-ac2a33202ef9b63045cbb3afca178df8.ssl.cf1.rackcdn.com//pdf/adding-ndi-to-your-network.pdf
 +
  
 
== Network Performance Settings ==
 
== Network Performance Settings ==

Revision as of 18:07, 5 March 2019

NDI (Network Device Interface) is a new network-based video and audio distribution protocol (video over IP on Ethernet-based LAN) developed by NewTek. Detailed description of NDI and its benefits can be found on the Official NDI page. It can be used TouchDesigner-to-TouchDesigner or with numerous other software tools and hardware products that support NDI.

See NDI In TOP and NDI Out TOP

See also, for H.264 over IP Video Stream In TOP, Video Stream Out TOP, and for HAP over IP Touch In TOP and Touch Out TOP

Network[edit]

The NDI protocol automatically discovers NDI video sources using mDNS, which is a multi-cast service discovery protocol. If your NDI sources are on networks not reachable via multi-cast, you'll need to specify the IP of the source machines in the NDI In TOPs parameters.

Latency[edit]

NDI offers a very low latency solution vs. H264, at the cost of higher network bandwidth.

Video Format[edit]

Video sent over NDI is sent as YUV 4:2:2 format, and is compressed. The video can optionally include an alpha channel as well. Video is 8-bit color depth. There are no limits to FPS or resolution, except for what the hardware can handle. Compression is done using the SpeedHQ codec, which is CPU based and very fast. NDI selects the compression level based on a few factors, including the FPS. It'll use a higher compression ratio when sending at a higher FPS, to ensure the bandwidth requirements don't become too high.

Multi-Cast[edit]

TouchDesigner is compiled against the Version 3.5 of the NDI protocol, so multi-cast servers are supported. For help on how to enable multi-cast for NDI, refer to the NDI documentation. Control for multi-cast is done outside of TouchDesigner using the NDI Access Manager tool, which comes with the Newtek NDI Tools.

Groups[edit]

NDI supports sources tagging themselves as being parts of one or more named 'groups'. When an NDI receiver searches for sources, it can specify groups it's interested in to reduce the number of sources it lists.

App[edit]

NDI provides a useful mobile application to stream NDI from phones. Search for Newtek NDI on the stores.

NDI Network Devices[edit]

See https://support.newtek.com/hc/en-us/articles/217662768-NDI-Network-Interface-Settings

See https://233b1d13b450eb6b33b4-ac2a33202ef9b63045cbb3afca178df8.ssl.cf1.rackcdn.com//pdf/adding-ndi-to-your-network.pdf


Network Performance Settings[edit]

On a few of our internal testing platforms it has been found that using the largest setting for Jumbo Frames on the network controller has generated very clear postive performance results with regard to remedying dropped frames at high resolutions on Gibabit NICs and switches. Not all switches support Jumbo Frames. A good switch that does is the Cisco SG300-12 and Cisco SG350-12 model.

To set jumbo frames open the control panel and locate the Network Card properties and click the Configure button.

JumboFrames.png

In the NIC properties dialog locate the Advanced page and in the attribute lister located Jumbo Packet and set the value to 9014 Bytes.

JumboFramesSetting.png

Performance Stats[edit]

1 4K RGB Noise signal is ~900 Mb/s so a single 4K signal can fully saturate and 1Gb/s switch. NDI uses massively variable compression so the Mb/s will depend on the content. When testing your bandwidth use RGB Randon Noise to determine your maximum requirements.