Control lanes

Control cables carry block-rate values, normally 0 to 1, that plug into any parameter through its socket.

A control cable carries lanes: numbers, normally between 0 and 1, that change from one audio block to the next. They are the cheap, slow wire of a Toy, used for modulation, sensors and anything that does not need an audio sample rate.

What it does#

A Toy cable is one of four types: audio (channels), control (lanes), MIDI (one stream carrying all 16 MIDI channels) or any (an unresolved bus end). Control nodes (ctl.*) run once per audio block inside the shared engine, so a control value moves in block-sized steps. Use Smooth when a stepped value would click.

A one-lane control cable can plug into any node parameter through its parameter socket. In the connection the destination port is @ plus the parameter id, for example { "node": "svf", "port": "@cutoff" }. The lane value from 0 to 1 maps across the parameter's range, logarithmically for log parameters such as cutoff, and the knob then shows the cable as its owner. A parameter with a cable cannot also have an LFO or a MIDI mapping. A parameter socket needs a one-lane source; use Select lanes to pick one lane out of a wider bundle.

Some nodes also send events: a labelled outlet beside the main output, such as done on Envelope, wrap on Counter and cycle on Control LFO, that is 1 for one block when the event happens and 0 otherwise, like Compare in Trigger mode. It is an ordinary one-lane control output, so cable it into a trigger input or a parameter socket; because control runs once per block, an event never lasts less than a block and two events inside one block count as one.

Tips#

  • Shape a lane with Scale for depth, offset and curve before it reaches a socket.
  • Envelope follower turns audio level into lanes; MIDI to control turns notes into six lanes.
  • Choice parameters (such as filter type) are discrete and are not good cable targets.

See also#

Control LFO, Constant, Select lanes, Cables and channels.

Edit this page on GitHub

esc

↑ ↓ move↩ open⌘↩ new tabesc close