NDI Target

NDI Target properties for Script Engine. Sends the composed video and audio out as an NDI source on the local network. Useful for feeding into NDI-aware production switchers (vMix, OBS, TriCaster), routing program/preview to graphics or replay machines on the studio LAN, monitoring on remote workstations, sending alpha-channel keys to downstream compositors, and IP-based contribution between Composer instances. NDI is the standard low-latency LAN transport — pick this over SRT/RTMP whenever the receiver is on the same network.

Property Type Access Description
ShowAdvancedOptions bool get/set Reveals advanced/expert properties in the panel. Off by default — flip to On to see fields like async send and detailed performance counters.
AutoStart bool get/set When On, the NDI target connects automatically when the project loads. Useful for unattended studio machines or automation rigs.
ChannelName string get/set Channel name advertised on the network. Receivers see the source as Composer-[ChannelName] (or with the machine name prefixed by their NDI client). A random name is generated for each new target so multiple instances don't clash. Pick something descriptive (e.g. studio-a-pgm) so operators can identify the feed at a glance. Can only be changed before the target has been started.
NdiChannelAlias string get The full NDI source identifier as it appears on the network — read-only, derived from the channel name. Use this when configuring an NDI receiver that needs the exact source string.
UseAsyncVideoSend bool get/set Sends video frames asynchronously when On (default). The NDI SDK handles color conversion and network transmission in the background, returning immediately so the pipeline keeps moving. Especially helpful for BGRA (alpha) output. Switch to Off only for debugging or when a downstream tool requires strict synchronous timing. Can only be changed while the target is disconnected.
ConnectionStatus ConnectionStatus get Current connection status (Disconnected, Connecting, Connected). Read-only; useful in scripts to gate logic on whether the NDI source is live.
StartCommand Command get Begins advertising the source on the network so receivers can pick it up.
StopCommand Command get Stops the NDI sender and removes the source from the network.
TallyProgram bool get On when a downstream NDI receiver currently has this source on Program (on-air). Read-only — the value is set by the receiver, not by Composer. Useful in scripts to drive on-air indicator lights, switch input states, or guard against destructive edits while live.
TallyPreview bool get On when a downstream NDI receiver currently has this source cued on Preview. Read-only — set by the receiver. Useful for soft preview indicators in operator UIs.
StartedDateTime DateTime get Timestamp of when the target last started broadcasting (read-only). Useful in scripts for computing uptime or stamping logs.
Width int get Output frame width in pixels (read-only). Matches the scene resolution.
Height int get Output frame height in pixels (read-only). Matches the scene resolution.
PixelFormat string get Pixel format used on the wire (read-only, debug). Typically BGRA so alpha is preserved for downstream keyers.
NumConnectedViewers int get Number of NDI receivers currently subscribed to this source (read-only). Use in scripts to confirm at least one downstream tool is actually consuming the feed.
SentVideoFrames int get Total number of video frames sent since the target was started (read-only, debug). Combined with uptime this gives an effective FPS.
NdiSendTime string get Time spent on the most recent frame send call, in milliseconds (read-only, debug). Spikes here usually mean a slow receiver or saturated network.

Inherits from: AbstractTarget.

See also: NDI Target in Targets — user-facing introduction, screenshots, and section summaries.