home/ atoms/ td-json-modular-playback-engine

Separating TouchDesigner authoring UI from a JSON-defined playback engine enables decentralised multi-process show control with load balancing

BeSide’s Xperience system demonstrates a software architecture principle applied to TD: a rich authoring environment (nodal GUI, timeline editor) writes show data to external JSON files; a separate playback engine reads those JSON files and renders. JSON domain-filtering lets the master procedurally assign which engine handles which zone, enabling server load balancing and multi-process performance without modifying TD patches. This separates concerns: authors work in a creative tool; operators deploy to stable engine instances. The same architecture pattern underlies most professional media server products (disguise, Resolume Server).

Examples

Xperience system: artists build cue lists and timelines in the authoring environment; show day, the JSON files are loaded by five engine instances on five PCs, each handling its own projector zone. If one engine crashes, the JSON file is redistributed to a surviving engine.

Assessment

Sketch the JSON schema for a two-zone show control system: define the keys that specify which engine plays which content, and explain how domain-filtering enables runtime load balancing without TD patch modification.

“an authoring environment and a JSON-defined modular playback engine architecture, is entirely built using TouchDesigner”
corpus · touchdesigner-summit-montreal-2019-talks-free-recordings · chunk 3