Build with this node

Start with a prompt in Studio, or copy it into your own coding agent.

Ask Studio

@maruaudio/dsp/voices/plaits translates the Mutable Instruments Plaits Voice with two engines, virtual analog (index 8) and additive (index 12), their pinned oscillators, the decay envelope and the low-pass gate, producing OUT and AUX. Every other model renders silence and is never mapped onto these.

Parameters

setPlaitsParameter returns false for an unknown index or non-finite value:

IndexRange as codedDefault
0 note12 to 96 semitones48
1 harmonics / 2 timbre / 3 morph; 4 to 6 FM, timbre, morph amounts0 to 1; −1 to 10.5; 0
7 engineRounded, 0 to 23; only 8 and 12 sound (isPlaitsModelSupported)8
8 decay / 9 LPG colour0 to 10.5

setPlaitsCv stores eight CVs (non-finite becomes 0); setPlaitsConnection clears a disconnected CV; setPlaitsInputPresent sets the five patch flags that choose between an external CV and the internal envelope.

Lifecycle

initPlaitsState(rate) allocates and resets → preparePlaitsState restores defaults and resets → set parameters, CVs and flags → tickPlaits(state) once per frame returns the stereo out (OUT, AUX); parameters and CVs latch every 12 frames → resetPlaitsState restores phases, filters and envelopes.

When to use it

A Plaits virtual-analog or additive voice in a module that admits only those models.

Limits

  • Stereo (OUT, AUX), sample tick, controls latched per 12-frame block.
  • The trigger passes a 256-sample delay read round(rate / 12000) back (1..255).
  • Signed MODEL CV quantizes in the firmware engine domain; zero restores VA.

Algorithm properties and proofs

No Lean 4 proof is mapped to this node.

Explore proofs alongside performance

Dependencies

None: this node imports no other node.

Dependents

No other node imports this one.

Used by

No plugin with a published composition uses this node yet.