User or admin access protects the configuration action.
NDI configuration
Use NDI configuration to choose the network interfaces and discovery servers Callaba uses to find and publish NDI sources.
Choose this whenYou need to choose NDI interfaces or discovery servers, especially across routed networks.
Use another module whenUse NDI Discovered Devices to inspect sources; do not change global discovery just to select one source.
/api/devices/updateNDIConfigurationBefore you start
The update method requires a valid x-access-token. Know the interface addresses, machine name, and discovery-server addresses that are reachable from the Engine host.
What you can do
update applies the NDI machine name, selected IP interfaces, and discovery-server configuration for the instance.
Example workflow
{
"machine_name": "Callaba Studio Gateway",
"ip_addresses": ["192.168.10.20"],
"discovery_servers": ["192.168.10.10"]
}
- Apply the configuration with an interface reachable from the NDI network.
- Synchronize NDI discovered devices.
- Confirm that expected senders appear and report current activity.
Common use cases
- Give a studio gateway a predictable NDI identity.
- Restrict NDI traffic to the production interface on a multi-homed host.
- Reach senders across routed networks through an NDI discovery server.
Limits and troubleshooting
An unreachable interface or discovery server prevents expected sources from appearing. Network routing, multicast policy, NDI version compatibility, and host firewall rules still apply. Recheck discovery after every network change.
Next steps
Open NDI discovered devices to verify visibility, then create an NDI adapter for a managed output.
Configure NDI in the dashboard, without editing files in a terminal
The normal setup path stays in Callaba: set the NDI machine name, discovery servers, and source IPs in dedicated fields. For advanced settings, import an existing ndi-config.v1.json file or edit the full configuration in the built-in JSON editor.
- Machine name
- Discovery servers
- Source IPs
Save the configuration, then confirm the expected sources in NDI discovered devices.
NDI send and receive groups scope source visibility on the NDI network. They are not user authentication, encryption, or a firewall. Callaba dashboard/API authorization separately controls who can change the instance configuration.
Configure NDI discovery for the intended network
Apply the reviewed NDI discovery configuration, then confirm the resulting source inventory in the discovered-devices module.
- Apply discovery settingsSend the reviewed configuration for the instance network.
POST /api/devices/updateNDIConfiguration - Verify discovered sourcesConfirm that only the expected source inventory appears.
POST /api/devices/getAll
Network visibility, multicast policy, and NDI access controls still apply. A saved configuration does not guarantee source discovery across routed segments.
Use Update NDI configuration to apply app-level NDI settings such as machine naming, discovery servers, explicit network IPs, or a full imported JSON configuration.
This endpoint matters because one save can change how the whole instance behaves in the NDI environment, rather than only changing one item in a list.
Use it when the goal is straightforward and production-facing: make NDI discovery behave the right way for this instance and keep that behavior consistent after the save.
Use this when the visible form fields are enough and you want the JSON editor to stay in sync with those values.
This mirrors the normal UI path where form changes and JSON changes stay aligned before save.
This matches the live-editor and import flow in the UI.
Dashboard label: Machine name.
Optional override for the machine name announced through the NDI network behavior.
Dashboard label: Discovery.
Comma-separated discovery-server list. The UI tooltip explicitly allows port numbers as part of the values.
Dashboard label: Networks ips.
Comma-separated list of explicit source IPs for cross-subnet discovery scenarios.
The live JSON editor model. The UI keeps this object synchronized with the visible form fields and imported config files.
The backend returns { success: true } after validating, writing, and applying the updated NDI configuration.
The backend writes the compiled config, stores ndi_settings on the app object, and triggers the ingress/apply path used by the engine to pick up the new NDI behavior.