vst instrument

vstInstrument · sources

Plays one of YOUR installed instrument plugins (AU builds of your VSTs) as a first-class rack voice via the vst-bridge native helper — poly/gate/vel CV converted to sample-accurate MIDI in the worklet, plugin audio returned into the lane, native editor window on your machine.

Plays one of YOUR installed instrument plugins — the AU builds of your VSTs (Arturia, Serum, Apple's built-in DLS synth, …) — as a first-class rack voice, through the vst-bridge native helper app (macOS, ws://127.0.0.1:9309). Drop it in a channel lane and it behaves exactly like an internal instrument: the lane's clip player auto-wires its pitch, gate and velocity outputs here, the card's stereo output auto-wires into the lane chain, and the worklet converts poly CV to sample-accurate MIDI (0.0 pitch CV = C4 = MIDI 60, 1.0 = one octave; gate threshold 0.5; tied steps become legato NoteOff+NoteOn pairs; velocity 0..1 maps to MIDI 1..127, default 100 when vel is unpatched). Pick a plugin on the card, mount it, and OPEN EDITOR raises the plugin's own native window on your machine. One card = one plugin instance (the helper caps at 16); a page refresh re-adopts the running instance, so the plugin and its state survive reloads. Requires the vst-bridge helper running locally (Chromium/Firefox; the card shows status) — without it the card sits silent and harmless. In a shared patch, audio renders only on the machine running the helper with the plugin installed; collaborators see the card but hear this voice only through your machine's contribution.

the faceplate

vst instrumentpolypolyPitchGatepitchcvgategatevelcvout_laudioout_raudioaudiocvgatepitch
4 inputs · 2 outputs · 0 params

inputs

idcablewhat it does
polypolyPitchGateThe rack's 32-channel poly note bus (16 voice pairs: even channels pitch V/oct, odd channels gate 0|1). Auto-wired from the lane clip player's pitch{n}. Each voice pair runs its own gate→NoteOn/NoteOff state machine in the worklet, so chords land as concurrent MIDI notes with per-voice NoteOffs.
poly pitch+gate bus; 10-channel poly bus (5 pitch + 5 gate lanes)
pitchcvMono V/oct pitch (0.0 = C4), used with the gate input only when the poly bus is unpatched — the hand-patch fallback for driving the plugin from a mono sequencer or LFO.
control voltage (CV)
gategateMono note gate (level-sensitive, threshold 0.5): rising edge = NoteOn sampling the pitch input at that instant, falling edge = NoteOff of the sounding note. Auto-wired from the clip player's gate{n} alongside the poly bus (the lane rule); the poly bus takes precedence whenever it is patched.
gate / trigger; gate — acts while the level is high (reacts to both edges)
velcvVelocity CV 0..1 → MIDI velocity 1..127, sampled at each gate rise (a NoteOn is never emitted at velocity 0 — the wire floor is 1). Unpatched, notes send velocity 100. Auto-wired from the clip player’s vel{n}.
control voltage (CV)

outputs

idcablewhat it does
out_laudioThe plugin's audio return, left — placed on the card's own timeline by the bridge (each returned block carries the sampleTime of the clock block that pulled it). Auto-wires into the channel lane chain.
audio signal; L/R stereo pair with out_r
out_raudioThe plugin's audio return, right (stereo-paired with out_l, so patching only the left side normals both).
audio signal; L/R stereo pair with out_l

controls

controlwhat it does
Vst connect {n}Opens this card's own session with the vst-bridge helper — one WebSocket, one plugin instance, keyed by this node id. It also RESTARTS a live session at the engine's current sample rate, which is the recovery path when another browser tab has claimed this card's instance: press it and the instance comes back here. The engine already connects on its own when the node is created, so this is for the case where the helper was not running yet, or where you disconnected on purpose.
Vst disconnect {n}Drops the session without deleting the node — the helper PARKS this plugin instance rather than destroying it (about 90 seconds), so a reconnect re-adopts the same plugin with its state intact. Use it to hand one of the helper's sixteen concurrent instances to another card, or to silence this voice without losing the patch.

source

vst-instrument.ts on GitHub.

Generated from packages/web/src/lib/{audio,video}/module-registry.ts · repo