Live performance

Wire the outside world into your graph: a camera, a MIDI knob, a network video feed, a microphone — and DNA reacts in real time, every frame.

DNA is built to perform. Drop a live input into your graph and the whole thing comes alive: instead of cooking only when you make an edit, the graph starts cooking continuously, frame after frame, so whatever you do on a controller, in front of a camera, or across the network shows up on screen instantly.

The live model

Every live setup is the same simple loop:

external source → your graph → output, repeating in real time.

A live source feeds fresh data into your graph each frame. Your nodes process it — warp it, react to it, drive parameters with it — and the result goes to your viewport, a projector, the network, or back out to hardware.

The moment you add even one live input, DNA switches into live mode and cooks every frame. Remove the last live input and it goes quiet again, only cooking when you edit. You don't toggle this — it follows your graph automatically.

Live mode is what makes interactive installations and shows possible. But continuous cooking costs performance, so keep an eye on the The performance panel when many inputs are running at once.

What you can plug in

DNA speaks the languages of live work — controllers, network media, sensors, and cameras:

Full details, including how to pick and configure a source, live in Inputs.

Sending results back out

Live work flows both ways. DNA can send video, control data, and lighting back into your rig:

See Outputs for the full picture.

Driving parameters with live data

One of the most powerful tricks in live work is letting an incoming signal turn the knobs of your graph. Pin a parameter, map a MIDI CC or OSC message to it, and now a physical fader controls anything in your project.

This mapping layer is the parameter bridge — it connects control-data inputs (MIDI, OSC, DMX, WebSocket, Serial) directly to pinned parameters. See The parameter bridge and The Parameters panel & hotbar.

You can also keep everything in sync to the beat — see Tempo sync and Clocks & tempo.

A simple example

A classic live chain looks like this:

  1. NDI Input receives video from another machine on the network.

  2. A Warp node bends and distorts that video.

  3. A MIDI Input maps four controller knobs onto the warp's grid, so a performer reshapes the image by hand.

  4. NDI Output sends the finished image back out over the network.

Network video in, hand-controlled distortion, network video out — all in real time.

Web Player has no live I/O or audio output. Native live inputs and outputs (cameras, MIDI, NDI, DMX, audio) are desktop-only. The Web Player is for sharing finished, self-contained pieces — see Web export and The player.

Some live integrations are platform-specific: Syphon GPU texture sharing and screen capture are macOS-only, and a few outputs (like NDI and Syphon as export targets) aren't wired into the export workflow yet. Stick to the live input/output nodes above for real-time work.

See also