What you need¶
Moonshine runs on two kinds of machine, and only one of them is fussy.
The show machine drives the projectors and does all the real work — rendering, warping, encoding the live preview. It has genuine hardware demands.
Everyone else just opens a browser. There is nothing to install and almost nothing to meet.
The show machine¶
Operating system¶
Windows 10 or 11, 64-bit.
macOS and Linux are not supported. TouchDesigner itself runs on macOS, but Moonshine's live preview is encoded with NVENC — NVIDIA hardware video encoding — which macOS hardware does not provide.
Graphics¶
An NVIDIA GPU is required, not merely recommended. The preview picture that every browser sees is encoded on the GPU by NVENC; without it there is no preview.
| Show size | Suggested |
|---|---|
| A few surfaces, moderate media | RTX-class card, 8 GB VRAM |
| Many surfaces, large or numerous assets | 16 GB VRAM or more |
| High output counts with heavy compositing | RTX 6000 Ada or equivalent |
TouchDesigner or TouchPlayer¶
Moonshine's show server runs on Derivative's engine, which is a separate product with its own license. This release is tested against build 2025.33230, and the installer will fetch that build straight from Derivative and install it for you (about 2.9 GB) if the machine does not already have it. The pin matters: a TouchDesigner save upgrades a project file irreversibly, so an older build refuses to open a project a newer one has touched.
Most show machines want TouchPlayer, not TouchDesigner. TouchPlayer runs the same project with the same feature set as its TouchDesigner tier and simply omits the network editor, which is exactly what a locked show machine wants — at half the price.
| What the machine does | Buy | Price |
|---|---|---|
| Runs shows: displays, SDI, NDI | TouchPlayer Commercial | $300 |
| Needs ST 2110 | TouchPlayer Pro | $800 |
| You also author TouchDesigner projects on it | TouchDesigner Commercial | $600 |
Prices are Derivative's and current at the time of writing; their store is authoritative.
Non-Commercial cannot run a show
The free Non-Commercial license caps every texture at 1280 × 1280 — it cannot produce a 1920 × 1080 output, let alone 4K — and it prompts for confirmation before touching cameras, audio devices or the network, which nobody is present to click on a show machine. Commercial is also the legal floor for paid work. Treat Non-Commercial as a way to look at the interface, not as a way to run anything.
CPU, memory and storage¶
- A modern multi-core CPU — Intel i7/i9 or Ryzen 7/9 class.
- 32 GB RAM minimum, 64 GB if the project carries a lot of media.
- An NVMe SSD for the project and its assets. Sequential read speed is what keeps playback smooth.
Projectors¶
Moonshine drives up to 48 projectors. It is agnostic about make and model — anything TouchDesigner can output to will work.
For live monitoring — lamp hours, temperature, signal status — Moonshine reads PJLink. Projectors without PJLink still display perfectly; they simply will not report stats.
Output counts are GPU-bound
High output counts are less about Moonshine than about what the GPU can composite and encode at frame rate. Measure on the real hardware before committing to a number.
Everyone else¶
Anyone joining the show needs a browser and nothing else.
- A Chromium-based browser — Chrome or Edge. See joining from another device.
- Any laptop, tablet or phone from roughly the last five years. The browser handles the interface and the vertex maths; neither is demanding.
There is one exception, and it is the thing people trip over:
The video preview needs a secure connection
Browsers only allow live video decoding on a secure address. Every control feature — projectors, warping, masking, playback, the scene — works over a plain http:// address, but the preview picture will not appear.
Reaching the show machine over https:// fixes it. The Windows app sidesteps the problem entirely and needs no certificate setup. Moonshine tells you which case you are in with a badge on the preview.
Network¶
- Everyone must be on the same local network as the show machine, or a routed VLAN that passes WebSocket traffic.
- Wire the show machine. Wi-Fi is fine for everyone else.
- No internet connection is required to run a show, only to activate one. A license with no end date keeps working offline for a period after its last successful check-in, but not indefinitely — give the show machine a route out occasionally, and always before a long run somewhere that has none. A license that does have an end date — a beta or a trial — stops on that date whether or not the machine is online: going offline does not buy extra days.
Ports¶
| Port | Carries |
|---|---|
9980 |
Control connection and media uploads, plain |
9443 |
The same, over TLS — this is the one that enables the video preview |
17351–17392 |
Live preview video, plain and TLS. Moonshine claims the first free pair at startup |
All are TCP. There is no UDP and no ICE negotiation, so there is no ephemeral port range to open — a fixed set of TCP ports is the whole story.
The installer opens all of these for you. If the venue firewall is managed separately, allow inbound TCP on 9980, 9443 and the range 17351–17392 at the show machine. Most venue and office networks need no changes at all.
Why a range and not two ports
A preview port is a per-machine resource, and another application on the show machine may already hold one. Moonshine probes the range at startup, takes the first free pair, and tells the browsers which pair it settled on — so this resolves itself without anyone intervening. Which pair it lands on is not knowable in advance, which is why the whole range is opened rather than two numbers.