Skip to content

    These docs are a work in progress. The software can already be useddownload WavePhase.

    Documentation

    Docs for WavePhase v0.9.3 · reviewed 2026-08-10

    A newer app release may have shipped since this review. These pages describe the latest public WavePhase release. If something looks different in your build, check for an app update.

    Nodes & Signals

    The Signal Patch

    The signal patch is the node graph at the centre of WavePhase. It wires sources through transformation nodes into outputs, and it's re-evaluated every frame.

    How it evaluates

    Every frame, WavePhase processes the whole patch in dependency order:

    1. 1

      Inject inputs

      Audio analysis, time and timecode, and external inputs (OSC, MIDI, DMX, API) push fresh values into their source nodes.
    2. 2

      Evaluate nodes

      Nodes are evaluated from sources toward outputs, each transforming its inputs into outputs.
    3. 3

      Emit outputs

      Output nodes send DMX, OSC, rendered video, and web updates to the outside world.

    No loops

    The patch is a directed, acyclic graph — values flow one way, from sources to outputs. This keeps evaluation fast and predictable.

    State that persists

    Some nodes remember things between frames — an animator's playhead position, a counter's current value, a smoothing node's last output, a crossfade in progress. This node state is kept separately from the patch definition, so every instance of a node tracks its own state independently.

    Fan-out and fan-in

    A single output can feed many inputs (fan-out) — useful for sending the same beat to several effects. Combining multiple values into one (fan-in) is done through dedicated nodes like switches, crossfades, arrays, and groups rather than by stacking links onto a single pin.

    Organising a patch

    • Use Note nodes to label regions of the graph.
    • Use Array nodes to bundle related values and keep links tidy (see Value Types).
    • Keep sources on the left and outputs on the right for readability.

    Using this for audio-reactive lighting? See WavePhase DSP workflows.

    Was this page helpful?