Display Servers

A display server is any machine in your WATCHOUT network that runs the Runner service and is responsible for rendering content to physical outputs. In a typical production, the operator designs the show on a Producer machine, and one or more display server machines handle the actual rendering — driving projectors, LED walls, monitors, audio systems, and capture devices. Display servers are the workhorses of a WATCHOUT installation: their GPU power, storage speed, and network connection directly determine what you can play back and at what quality.

What a Display Server Does

When a display server starts, its management service announces the machine on the network so Producer can discover it. Once the Director assigns work to the machine (based on which displays are mapped to its host alias), the Runner service on that machine:

  1. Connects to the Director to receive real-time playback instructions — which timelines are playing, at what position, and what cues are active.
  2. Downloads required assets from the Asset Manager — media files are transferred over the network and cached locally so they are ready for instant playback.
  3. Renders content to its assigned display outputs using the machine's GPU, and routes audio to its configured audio devices.
  4. Reports status back to Producer, including download progress, playback health, GPU utilization, drive space, and network throughput.

A single display server can drive multiple display outputs if the machine has multiple GPU outputs, SDI cards, or NDI streams configured.

Hardware Considerations

Display servers are typically dedicated machines optimized for media playback:

  • GPU — the primary factor in rendering performance. Choose a GPU that can handle the resolution, codec, and layer count your show requires. WATCHOUT supports NVIDIA GPUs with hardware video decoding.
  • Storage — a fast SSD is recommended for the working directory where cached assets are stored. Media playback reads from this local cache, so disk speed directly affects performance with large or high-bitrate files.
  • Network — Gigabit Ethernet minimum, with 10GbE recommended for installations with many large assets or frequent show changes. The network connection is used for asset downloads, playback state updates, and status reporting.
  • CPU — generally less critical than GPU for media playback, but needed for audio rendering, NDI processing, and general system responsiveness.

For dedicated installations, Dataton offers WATCHPAX hardware — purpose-built display servers pre-configured with WATCHOUT software. WATCHPAX units come with a default configuration that includes pre-set working directories and remote file access permissions, reducing setup time.

Setup Checklist

Setting up a new display server involves these steps:

  1. Install WATCHOUT node software on the machine. The installer sets up all required services and configures firewall rules automatically.
  2. Verify network connectivity. Ensure the machine is on the same network subnet as your Producer and other WATCHOUT nodes.
  3. Confirm the node appears in Producer. Open Window > Nodes in Producer and verify the new machine shows up in the node list with its host alias and available services.
  4. Assign displays to the node. In your show's display configuration, set the Host field of each display to the node's alias. This tells the Director which Runner should render each display output.
  5. Assign an Asset Manager. Ensure a node is designated as the Asset Manager so the display server can download media files.
  6. Assign a Director. Ensure a node is designated as the Director so the display server receives playback commands.
  7. Verify asset download. After the Director starts, check that the Runner is downloading assets from the Asset Manager. Download progress is visible in the Nodes window.
  8. Test playback. Run a timeline and confirm that content appears on the physical display outputs connected to the machine.

Monitoring Display Server Health

Producer provides real-time status information for each display server in the Nodes window and the node's properties panel. Key indicators include:

IndicatorWhat It Shows
ServicesWhich WATCHOUT services are running on the node (Runner, Visual Renderer, Audio Renderer, etc.)
Software VersionThe installed WATCHOUT version — a warning icon appears if it does not match Producer's version
NTP DiffThe time offset between this node and the NTP reference — should be near zero for synchronized playback
Download ProgressCurrent asset download state and percentage for pending transfers
CPU / GPU / Memory / DriveSystem resource utilization on the node
NetworkUpload and download throughput on the node's network interface
Last SeenWhen the node last announced itself on the network — a stale timestamp may indicate a connectivity problem

Startup Action

Each display server can be configured with a Startup Action that determines what happens when the machine boots (or when WATCHOUT services restart):

ModeBehavior
No ShowThe node starts without loading any show. It waits for a Director to assign work.
Last ShowThe node automatically loads the most recently active show from its local storage.
Specific ShowThe node loads a particular show file that has been uploaded to its local storage.

Startup Action is configured per node in the Nodes window under the node's Director settings. You can upload show files to the node for the "Specific Show" option, and remove them when they are no longer needed.

This feature is essential for unattended installations where machines must begin playback automatically after a power cycle without an operator present.

Multiple Shows and Warnings

A display server is typically associated with a single show at a time through its Director connection. If the Director sends a different show than the one the Runner is currently running, the Runner transitions to the new show. Producer will display a warning if there is a show mismatch between what the Director expects and what a Runner is currently running — this typically resolves automatically as the new show loads.

Cloning Display Server Machines

When deploying multiple display servers from a cloned disk image, each WATCHOUT node must have a unique machine ID. This ID is stored in the wo7_settings folder:

C:\Users\<username>\AppData\Roaming\Dataton\WATCHOUT 7\

If you clone a machine after WATCHOUT has been installed and run, all cloned machines will share the same machine ID, causing identification conflicts in the cluster — nodes may appear as duplicates or behave unpredictably.

Before creating a disk image for cloning, delete the wo7_settings folder from the source machine. Alternatively, delete this folder on each cloned machine before starting WATCHOUT for the first time. WATCHOUT will generate a new unique machine ID on next launch.

Configuring allow_list.json

By default, WATCHOUT display servers do not permit remote software updates or unrestricted file access for security reasons. To enable these features, you must create a configuration file called allow_list.json in the WATCHOUT settings folder:

C:\Users\<username>\AppData\Roaming\Dataton\WATCHOUT 7\allow_list.json

The file uses the following format:

{
  "folders": ["D:/shows/"],
  "update_allowed": true
}
FieldDescription
foldersAn array of filesystem paths that WATCHOUT is allowed to access for asset transfer. Only paths listed here can be used as working directories or asset sources.
update_allowedSet to true to allow Producer to push software updates to this machine remotely. Set to false or omit to block remote updates.

WATCHPAX units ship with allow_list.json pre-configured. If you are using custom display server hardware, you must create this file manually. Without it, Producer cannot push software updates to the machine.

Locking Display Output Channel Numbers

Windows can renumber display outputs when monitor connections change (e.g., when a cable is unplugged and reconnected, or when a display is power-cycled). This can cause WATCHOUT to send content to the wrong physical output.

To prevent this, set the following Windows environment variable:

USE_GPU_CONNECTORS_AS_CHANNELS=TRUE

This locks physical GPU connectors to fixed channel numbers, ensuring that display output assignments remain stable regardless of connection changes.

After setting or changing this environment variable, you must restart WATCHOUT for the change to take effect.