The player
A finished piece is a self-contained bundle that runs anywhere — on the desktop DNA Player, in a browser, or headless on a server.
When you export a piece (rather than a video or audio file), DNA writes a portable bundle: your whole graph plus the media it needs, ready to play back live. The bundle runs the same graph you built in the editor, cooking and rendering every frame in real time. There are three ways to play it.
The DNA Player (desktop)
The desktop DNA Player is the full-fat way to run a bundle. It opens a window, loads your piece, and plays it continuously with everything intact: live audio output, real-time rendering, and live inputs and outputs.
Any parameters you exposed when exporting show up in a small panel over the artwork, so a viewer (or you, on stage) can tweak the piece without opening the editor. You can also launch it fullscreen at a chosen resolution and frame rate.
Expose only the parameters you want a viewer to touch. Everything else stays locked, so the piece can't be accidentally broken during a show. See The Parameters panel & hotbar for choosing what to surface.
This is the right player for installations and live performance — it speaks MIDI, OSC, DMX, camera, gamepad and the rest, so the bundle keeps responding to the world around it. See Inputs and Outputs.
The Web Player (browser)
The Web Player runs the same bundle inside a browser using WebGPU — no install, just a link. It cooks and renders the graph live, accepts parameter changes, and resizes to the page. It's the easiest way to share an interactive piece with someone.
The Web Player has no audio output yet, and no native live inputs or outputs (no MIDI, OSC, DMX, camera, or NDI/Syphon). It is visual and interactive only. If your piece depends on sound or live I/O, share it via the desktop DNA Player instead.
The browser needs WebGPU support. Most current desktop browsers have it; some mobile and older browsers don't, and will fail to start the player. See Web export for packaging and hosting details.
Headless (batch and servers)
A bundle can also run without a window — useful for rendering on a server or batching many variations. You hand it a piece, set parameters from the command line, and let it cook. This is the same engine the windowed player uses, just without the interactive panel.
This is how the offline render targets work under the hood, and it's handy for automated jobs. For straightforward outputs, the output.export node and the Exporting targets are usually simpler than driving a headless run yourself.
What runs where
| DNA Player (desktop) | Web Player | Headless | |
|---|---|---|---|
| Real-time rendering | Yes | Yes | Yes (offline) |
| Audio output | Yes | No | Depends on job |
| Live inputs/outputs (MIDI, OSC, DMX, camera) | Yes | No | No |
| Exposed parameter controls | Panel | Yes (via page) | Command line |
| Install needed | Yes | No (just a link) | Yes |
Export targets are still filling in. Video, image, audio-file, and web exports ship today. Audio-plugin, standalone-app, embedded, and NDI/Syphon-as-export targets are planned but not yet available, and a revamped export panel is on the way. See Exporting for current status.