Skip to content

NDI Support ​

Exaplay 3 can receive NDI® (Network Device Interface) video streams as live inputs, and optionally output to NDI for monitoring or routing.

What Is NDI? ​

NDI is a royalty-free standard by NewTek/Vizrt for transmitting high-quality video over standard IP networks (Gigabit Ethernet or faster). Common NDI sources include:

  • vMix, OBS, Wirecast — live production software
  • PTZ cameras with NDI output
  • NDI converters for SDI and HDMI sources
  • Other Exaplay 3 instances

Receiving NDI ​

  1. Ensure the NDI sender is on the same network as the Exaplay machine.
  2. In the File Browser, click the Live Feeds tab.
  3. Available NDI sources appear automatically (NDI discovery uses mDNS).
  4. Drag an NDI source onto a track in the Timeline, the same as any media file.

Live Feeds tab with NDI sources

Live Source On/Off Switch ​

Each NDI live source has an Enabled switch in its Set Live Parameters dialog. Turning a source off releases the receiver so the NDI SDK stops scanning for the (absent) sender — the deterministic way to drop CPU when a source is switched off at the wall.

  • The auto-reconnect search for a sender that drops out unexpectedly stays at full cadence, so a genuinely lost source still reconnects on its own.
  • The Enabled switch is the operator's explicit lever for a source that is meant to be off.

New in 3.2: this switch resolves the "NDI source switched off → high CPU" case.

One Stream, Many Placements ​

Placing the same NDI source several times — four picture-in-picture windows of one camera, say — costs one receiver, not four. The clips that show one stream share a single receiver on the engine: the stream is received, decoded and uploaded to the GPU once, and every placement draws from that picture with its own position, size, effects and warping.

  • In the clip's Inspector, the Live section says Receiver shared with … on every placement except the one carrying the receiver. Nothing needs to be set up — clips share automatically when they name the same device, stream and format.
  • If the carrying clip is removed, stopped or switched off with its Enabled switch, another placement takes the receiver over on its own within a moment.
  • The escape hatch is live.share-receivers in the system configuration (default on); off restores one receiver per clip.

New in 3.4: four PiPs of one 1080p sender previously ran four receivers and could drop the engine to 20-30 fps at 80-90 % CPU.

Auto-Connect on Project Start ​

NDI sources saved in a project are re-armed automatically when the project loads, so live feeds start reliably on startup without having to re-add them by hand.

NDI Performance ​

ResolutionRequired network bandwidth
1080p/30~125 Mbps
1080p/60~250 Mbps
4K/30~500 Mbps

Use a dedicated VLAN or at least a managed switch with QoS for NDI traffic in professional environments.

NDI Output (Sends) ​

An NDI stream is an output like a monitor — you add one and assign it a screen:

  1. Open the STAGE tab and, on the Mapping to outputs tab of the panel under the canvas, click + NDI.
  2. The new send appears in the Sends lane under the canvas. Select it and pick its Assigned screen — a send with no screen streams nothing.
  3. Set the NDI Name (the name receivers see; defaults to the first free Exaplay NDI N) and, under More settings, its Resolution.

The stream becomes discoverable by any NDI receiver on the network as soon as the screen renders. What goes out:

  • Its slice of the screen. A screen with only sends streams the whole canvas. A screen that mixes monitors and sends streams, for each send, the strip the Stage lays out beside the monitors — at the send's own resolution, without the monitors' picture.
  • Several sends per screen are fine; each is its own stream with its own name.
  • Video only. No audio travels with an NDI send.
  • The screen's 2D warp, but not a VIOSO/dp calibration (that is applied to the projector window, and a monitoring stream wants the content).
  • Opaque. The canvas alpha is dropped unless ndi.send-alpha is set in the system configuration.
  • At the engine's render rate (the frame rate the outputs actually present at).

The send's panel shows a Status line — streaming 1920x1080 @50 fps, canvas 1920,0 — and names the reason when it is not sending (the Medialooks NDI renderer missing, a slice that fell off the canvas after a resize). Two sends typed with the same name are told apart automatically (Name, Name 2).

Troubleshooting ​

ProblemSolution
NDI source not discoveredCheck firewall (allow UDP 5353 for mDNS, and TCP/UDP 5960+ for NDI data)
Dropped framesUse a wired connection; NDI is latency-sensitive
High CPU on receiveInstall the NewTek NDI SDK for hardware-accelerated decoding
High CPU from a source that is switched offTurn the source off with the Enabled switch in Set Live Parameters — this releases the receiver so the SDK stops scanning for the absent sender
Frame rate drops with several placements of one streamEvery placement should say Receiver shared with … in its Inspector except one. If each says nothing, the clips differ in stream or format (check Set Live Parameters), or live.share-receivers is off
Several placements of one stream but you only need a smaller pictureAsk the sender for a lower resolution (a 720p sender costs less than half of 1080p to receive and decode) — the receiver cannot downscale the stream it is sent
Source shows but won't playCheck that resolution and frame rate are within system limits

Exaplay 3 User Documentation