Wiring
The Wiring canvas. Drag plugins, audio I/O, MIDI inputs, and utility nodes onto an infinite grid; connect them with type-aware cables. This is the layer where you decide what audio your rig makes; the Stage is where you decide how the audience sees you change it.
Anatomy
- Cards, every node is a card: title, category color stripe, ports on the sides. Audio I/O and MIDI input cards are pinned (
audio-in,audio-out,midi-in*); plugin / mixer / utility cards are placed wherever you drop them. - Ports, input ports on the left, output ports on the right. Audio ports are circles; MIDI ports are diamonds. They refuse cross-type connections.
- Cables, drawn behind the cards, type-coloured, animated when signal flows (configurable via the wire-visualization toggle in the top toolbar).
- Selection, click a card to focus, shift-click to add to selection, marquee-drag empty canvas to multi-select.
Adding a plugin
Hit the + button in the top-right of the canvas, or right-click empty canvas. The plugin picker opens with two views:
- Grid (default), large cards by vendor, format / version / category badges, vendor groups collapsible (click the chevron; search auto-expands matches).
- List, a vendor → family → variants tree, keyboard-driven.
Pick a plugin, optionally rename it, hit Add. The card lands at the centre of your current viewport, not at a fixed grid corner, so you don't have to pan after every add.
Wiring
Drag from an output port to an input port. The hit-region is generous (~14 px); on hover, the destination port lights up if the type matches.
- Multi-channel bundles. A stereo cable carries both channels, you wire it once. Hover the port to see its channel count; expand a port to split into individual cables when the destination needs per-channel access.
- Drop-on-wire splice. Pick up an unconnected card, drag it over an existing A→C wire, drop, the engine splices it inline (now A→B→C). Mirror gesture (drag a card off its wires onto empty canvas) auto-stitches around it.
- Wire context menu. Right-click a cable to disconnect, view source / destination, or insert a node from the picker.
Auto-arrange
Auto-arrange in the top toolbar runs an audio-aware layout pass: nodes are placed by signal-flow depth (audio-in at column 0, audio-out at the deepest column), then nudged vertically by barycentric placement so wires read straight instead of zig-zagging. Run it any time a graph gets messy.
Card groups
Marquee-select two or more cards in edit mode and + Group appears above the canvas. A saved group becomes a named chip at the top-left.
Pressing a chip isolates that group: every card and wire outside it dims, so one instrument's signal path can be worked on in peace. Press it again to bring everything back. Right-click a chip to rename, re-capture (replace its members with the current selection), or delete it. Groups are saved with the project.
Pressing a chip also centres and fits the group, so you land on it rather than hunting for it on a large board. Pressing it again puts the view back exactly where it was before you pressed the first chip.
That original view survives moving between groups: press drums, then bass, then vocals, then press the active chip to leave, and you return to the board as you left it rather than to wherever the last group put the camera. A pan or zoom you make while inside a group is not kept, so leaving always lands in the same place.
If you would rather the camera stayed put and the chip only dimmed, turn off Zoom to a group when its chip is pressed in Settings ▸ Wiring.
Wire visualization modes
The wire-mode select (top toolbar) toggles between:
- Simple, static wires.
- Activity, wires pulse when audible signal flows. Good for spotting a dead patch without leaving the canvas.
- Levels, stroke color shifts green → yellow → red with live signal level. Best for verifying gain staging without opening a meter on every wire.
Inspector
Selecting a card (single click) opens the right-hand inspector with:
- Plugin / card identity (name, format, version).
- Bypass toggle.
- For Channel Mixer cards: per-strip user labels (rename "CH 1" to "Piano" and the strip header reflects it; binding pickers in the Stage inspector also adopt the user label).
- Remove (with confirmation; auto-stitches A→C wires around the removed node).
- OSC (plugin cards, when OSC is enabled in Settings ▸ OSC): map one of the plugin's parameters straight to an OSC address, in either direction. Pick the parameter, then set Receive on for an address that drives it, and/or a host, port and address to send its value whenever it changes. This is separate from the OSC mapping in the Stage inspector: that one binds a panel control, whereas this reaches a parameter directly, so a lighting desk or tablet can drive something you never put on a panel. Clear a field to remove the mapping.
Reset knobs / faders via double-click on the in-card UI of mixers, meters, the metronome, and other built-ins.
Per-strip labels on Channel Mixer
A Channel Mixer's strips ("CH 1", "CH 2", ...) can be relabelled. Open the node inspector with the mixer selected → "Strip labels" section → type a label per strip. The label propagates into:
- The strip header on the card.
- The Stage inspector's parameter dropdown ("CH 1 Treble" becomes "Piano Treble" if strip 1 is labelled "Piano").
- The peak-binding picker on the Stage inspector.
Labels round-trip in the project file under the canvas-extras blob.
Built-in nodes (utilities)
In addition to your VST3 / AU plugins, Stagewright ships a small set of always-available built-ins. See Built-in processors:
- Channel Mixer, N-strip console with input gain, EQ, fader, pan, mute / solo, post-fader peak metering.
- True-Peak Meter, broadcast-quality peak readout.
- Signal Generator, sine / square / noise for testing wires.
- Tuner, fundamental-frequency detector; pair with a Stage SwTuner widget for performance-distance readout.
- Metronome, synth click + bar / beat state stream; pair with a Stage SwMetronome widget.
- Boolean Control, single-button toggle whose value can drive any plugin's bypass via the Wiring-canvas bypass gate.
- VU Meter, analog-style level needle.
Edit / lock
By default the Wiring canvas is locked: an Edit toggle on the topbar guards structural changes so a mid-show drag can't disconnect your rig. While locked:
- Wires can't be dragged from ports, cards can't be moved, and the marquee (group-select) doesn't start — these gestures are edit-only and are blocked at the source, cursors included, rather than reverting after the fact.
- Everything you need live stays live: clicking a card to select / focus it, every control inside cards (plugin editors, mixer faders, mutes), panning (space-drag, middle-drag, wheel), zoom, and the minimap.
- A subtle Locked chip over the canvas explains why edits are being refused.
Prefer everything editable all the time? Settings ▸ Wiring ▸ Always unlocked removes the toggle entirely. The companion Start locked at launch switch decides which state a lock-by-default session begins in.
Keyboard shortcuts (Wiring)
| Shortcut | Action |
|---|---|
| Space + drag | Pan canvas |
| Middle-mouse drag | Pan canvas |
| Trackpad pinch | Zoom (cursor-anchored) |
| Wheel | Pan (Wheel mode = pan) or zoom (Wheel mode = zoom) |
| Marquee (drag empty canvas) | Multi-select cards |
| Shift-click card | Add / remove from selection |
| Drag selected | Move every selected card in lock-step |
| Right-click card | Card menu (rename, bypass, remove) |
| Right-click wire | Wire menu (disconnect, splice) |
| Cmd-A | Select all |
| Cmd-Shift-R | Restart engine |