Network Overview

WATCHOUT is designed to be flexible. Every service — Producer, Director, Runner, and Asset Manager — can run on a single node. For larger shows that is not practical. Instead, Producer runs on one node, and the Runners run on dedicated nodes that drive the displays and audio devices. The Director coordinates the Runners and keeps their playback synchronized. The Asset Manager keeps every node supplied with the files it needs. Each Runner downloads its assets from the Asset Manager.

The four core services

A WATCHOUT installation uses four services. They can all run on one node or be spread across separate nodes:

ServiceRole
ProducerThe authoring application. You arrange cues on timelines, configure displays, manage assets, and control playback. Producer is the only service with a full graphical interface for show design.
DirectorThe playback coordinator. The Director holds the running show and sends playback state to every Runner so all nodes play the same content at the same time.
RunnerThe rendering engine. Each Runner receives playback instructions from the Director and renders content to its assigned display and audio outputs.
Asset ManagerThe media distribution service. It stores the master copy of the show's assets and distributes them to Runner nodes as needed.

In a multi-node setup, Producer runs on the operator's node, the Director and Asset Manager run on the same node as Producer or on a dedicated node, and each playback node runs a Runner.

How nodes discover each other

Nodes find each other automatically using UDP multicast. Each node joins the multicast group 239.2.2.2 on UDP port 3012 and announces itself. Other nodes hear the announcement and add it to their node list. Discovery is continuous: nodes re-announce, and the system notices when a node appears or stops responding.

Discovery is name-based. Each node is identified by its name (a human-readable string you set in Producer), not by IP address. If a node's IP address changes, other nodes find it again by its name.

You see all discovered nodes in the Nodes window in Producer. Each node shows its name, running services, software version, and status. There is no manual "dismiss" action — a node drops off the list once discovery stops hearing it. A node the show still expects but that has stopped responding is marked as an error.

For discovery to work, all nodes must be on the same subnet or reachable through infrastructure that forwards multicast. See Firewall Configuration.

How services communicate

Once nodes discover each other, the control and state paths run over TCP (HTTP and Server-Sent Events). Discovery itself stays on UDP multicast. The main paths are:

  • Producer to Director — Producer sends show data and playback commands.
  • Director to Runners — the Director sends playback state to each connected Runner. When playback is predictable, it schedules states ahead of time. When you scrub, it sends them immediately. Scheduling ahead absorbs normal network latency, and the aligned clock keeps every Runner in sync.
  • Asset Manager to Runners — Runners download media files as needed. Large asset libraries mean large transfers.
  • Producer to all nodes — Producer talks to the management service on each node for updates, renaming, restart commands, and status.

Changing roles

By default the Producer node also runs the Director and the Asset Manager — one node hosts all three. Move the Director or Asset Manager to another node when the use case calls for it.

For example, in a fixed installation the Producer node is often removed after programming. The Director then has to run on one of the Runner nodes, and the Asset Manager is best placed on the node with the largest disk.

Change a role from the Nodes window:

  1. Open Window > Nodes to see all discovered nodes.
  2. Right-click the node that should run the Director and choose Use Director.
  3. Right-click the node that should run the Asset Manager and choose Use Asset Manager.

Runner roles need no assignment. Any node with the Runner service available plays back when the Director assigns it work, based on which displays are mapped to its name.

You can also connect to an existing Director from File > Open Show from Director. If that Director is already running a show, WATCHOUT asks whether to Take Over (control the running show) or Open without Director (open the show without controlling it).

Cold spares

Discovery resolves a name to whichever node currently announces it. This supports a cold spare — a backup node ready to take over. If a node fails or must be taken offline for service, give the spare the same name as the node it replaces. Discovery then resolves that name to the spare, and every device assigned to it moves across with no show-file change. The spare needs matching hardware (same outputs, same audio interfaces).

WATCHOUT resolves a name to the node it has seen most recently.

Run only one node with a given name at a time. With two live nodes sharing a name, WATCHOUT picks the most recently seen, and the choice can flip between them unpredictably. Use a shared name only to replace a node that is offline.

Network design recommendations

  • Prefer wired Ethernet for show-critical nodes. WATCHOUT also runs over Wi-Fi, but wired links give steadier timing and more bandwidth. On Wi-Fi, NTP sync is less precise and large asset transfers are slower.
  • Keep WATCHOUT nodes on a dedicated network or VLAN. Isolating show traffic prevents bandwidth contention and discovery interference.
  • Use a managed Gigabit switch or faster. Asset transfer to several Runners at once generates heavy traffic.
  • Give each node a unique, descriptive name. Names like "Stage-Left-1" or "LED-Wall-A" are easy to identify in the Nodes window and in errors. Keep names stable across rehearsals and shows.
  • Plan for asset transfer time. The first show load on a Runner downloads all required assets from the Asset Manager. For large libraries this takes time. Schedule it for setup, not showtime.

For switch, NIC, and cabling specifics, see Network Configuration.

Single-node vs multi-node

AspectSingle nodeMulti-node
SetupMinimal — all services start locallyNeeds network configuration, role assignment, and firewall verification
Display scalingLimited by one node's GPU outputsScales to many outputs across many nodes
Fault isolationOne failure affects everythingOne Runner can fail without affecting others
Asset distributionInstant — all files localNetwork transfer to each Runner
Use caseProgramming, previewing, small showsLive production, multi-display and permanent installations

Most workflows use both: program and preview on one node, then deploy to a multi-node setup for the show.