GDVP License

Mixer

Mixer — GDVP_NODE_MIXER ✅ (usually auto-injected)

← Node Reference · Manual index

A multi-input summing bus with per-input and master gain. In normal use you don't place it yourself — the DAG compiler inserts a mixer automatically whenever more than one edge fans into the same input port. You can also place one explicitly in a .gvp (the example patches do, e.g. organic_pad_reverb). Source: gdvp_dsp_mixer.c, payload gdvp_node_mixer_t in gdvp_nodes.h.

Signal & ports

  • Inputs: up to 6 sources, summed.
  • Output (port 0): the mix.

Parameters

Parameter Param ID / patch key Range Meaning
Master gain GDVP_PARAM_MIXER_MASTER_GAIN (CC 87) / patch master_gain 0–16383 Output level of the mix, EMA-smoothed
Input gain 0–5 GDVP_PARAM_MIXER_INPUT_GAIN_0…5 (CC 88–90 + …) / patch input_*_gain 0–16383 Per-input level
Mute GDVP_PARAM_MIXER_MUTE 0/1 Silence the mix output
Input count (node input_count) 1–6 Active inputs (set by the compiler when auto-injected)

Patch files name the per-input gains positionally (input_a_gain, input_b_gain, …). The engine exposes six numbered input-gain parameter IDs for live/MIDI control.

Behaviour notes

  • Auto-injection. When you wire three oscillators into one filter input, the compiler places a mixer in front of the filter and routes the three sources through it. The patch's post-compilation edge list (what the front panel draws) will show the injected mixer even though you didn't add it. See DAG §2.3.
  • Integer-only smoothing. Master gain is Q16.16 EMA-smoothed (ema_shift), so level changes don't zipper.
  • Bounded. Six inputs maximum, fixed 28-byte state — consistent with the no-allocation rule.

← Node Reference · Manual index