Skip to content
Voro
  1. Audio
  2. Control

Steps

Steps is an eight-step modulation sequencer for control signals. It steps through up to eight values at a rate, with playback direction, per-step probability, pattern rotation, swing, and slew between steps. It is a control-signal operator, not audio DSP: use it to step a filter, an effect amount, or any parameter through a repeating pattern.

Dial the step values into Value0 through Value7, set Rate and Steps, and wire the value output into the parameter to modulate. Slew glides between steps, Probability skips steps at random, and Direction changes how the pattern is traversed. Wire a trigger source into trigger to advance on events instead of a clock.

  • Input 0: rate — control stream that scales the rate. Optional.
  • Input 1: phase — external phase input. Optional.
  • Input 2: trigger — advances or restarts on a rising edge. Optional.
  • Input 3: gate — gates the sequencer. Optional.
  • Output 0: value — the current step value.
  • Output 1: phase — position within the pattern.
  • Output 2: cycle — running pattern cycle count.
  • Output 3: pulse — fires on each step.
  • Output 4: active — whether the sequencer is running.
  • Rate — steps per second.
  • Swing — shifts alternating step timing, bipolar.
  • Slew — glide time between step values.
  • Probability — chance each step fires. Below 1 the pattern varies without editing it.
  • Steps — pattern length, 1 to 8.
  • Direction — forward, backward, ping_pong, random, or brownian.
  • Rotation — rotates the pattern’s starting point.
  • Seed — repeatable random for probability and the random directions.
  • Value0 to Value7 — the step values, -16 to +16.
  • brownian wanders one step at a time; random jumps anywhere. Both are repeatable per Seed.
  • The pulse output fires per step and can clock another control op.
  • Slew high enough relative to Rate turns a stepped pattern into a continuous morphing shape.

Inputs

  • rate row
    control_f32_v1
  • phase row
    control_f32_v1
  • trigger row
    control_f32_v1
  • gate row
    control_f32_v1

Outputs

  • value row
    control_f32_v1
  • phase row
    control_f32_v1
  • cycle row
    control_f32_v1
  • pulse row
    control_f32_v1
  • active row
    control_f32_v1
Rate (Rate) Float op('steps').par.Rate
Default:
4
Range:
0 to 1000
Swing (Swing) Float op('steps').par.Swing
Default:
0
Range:
-0.95 to 0.95
Slew (Slew) Float op('steps').par.Slew
Default:
0
Range:
0 to 10
Probability (Probability) Float op('steps').par.Probability
Default:
1
Range:
0 to 1
Steps (Steps) Int op('steps').par.Steps
Default:
8
Range:
1 to 8
Direction (Direction) Menu op('steps').par.Direction
Default:
0
Options:
forward, backward, ping_pong, random, brownian
Rotation (Rotation) Int op('steps').par.Rotation
Default:
0
Range:
-64 to 64
Seed (Seed) Int op('steps').par.Seed
Default:
1
Range:
0 to 16777215
Value0 (Value0) Float op('steps').par.Value0
Default:
0
Range:
-16 to 16
Value1 (Value1) Float op('steps').par.Value1
Default:
1
Range:
-16 to 16
Value2 (Value2) Float op('steps').par.Value2
Default:
0.25
Range:
-16 to 16
Value3 (Value3) Float op('steps').par.Value3
Default:
0.75
Range:
-16 to 16
Value4 (Value4) Float op('steps').par.Value4
Default:
0.5
Range:
-16 to 16
Value5 (Value5) Float op('steps').par.Value5
Default:
1
Range:
-16 to 16
Value6 (Value6) Float op('steps').par.Value6
Default:
0
Range:
-16 to 16
Value7 (Value7) Float op('steps').par.Value7
Default:
0.5
Range:
-16 to 16