Skip to content
Voro
  1. Audio
  2. Compose

Arp

Arp takes the notes you feed it and plays them back as a rhythmic pattern locked to the timeline. It can hold a chord and arpeggiate it, or soak up a stream of fast-moving voices into a playable pool and pattern that. The result is a steady arpeggio you can route into any Voro instrument.

Wire a timeline clock into Input 0 and a note source (a chord from Chord, a held performance, or any note-voice generator) into Input 1. Pick a Pattern and Order, set the Rate, and the out voices drive an instrument such as Synth or Sampler. Use the input mode to decide whether Arp follows your playing closely or builds a pool from it.

  • Input 0: timeline timeline clock. Required, sets the beat grid.
  • Input 1: voices note voices to arpeggiate. Required.
  • Output 0: out emits the arpeggiated note voices.
  • Inputmode: how incoming notes are gathered. snapshot and hold track the current notes, soak pools recent notes over time, swarm keeps a wider live set.
  • Pattern: straight, euclid, pendulum, randomwalk, or burst.
  • Order: step direction, including up, down, updown, as_played, random, inside_out, and outside_in.
  • Rate and Steps: clock division and pattern length.
  • Octave and Range: base octave shift and how many octaves the pattern climbs.
  • Gate, Density, Velocity: note length, how many steps actually fire, and output level.
  • Ratchet and Humanize: subdivision retriggers and timing or velocity looseness.
  • Soak and Inertia: how strongly the input pool fills and how slowly it changes.
  • Resetonbar and Seed: realign the pattern each bar and set the random sequence.
  • With no notes coming in, Arp has nothing to play, so keep a note source wired to Input 1.
  • soak and swarm are useful for turning a busy or chaotic note stream into a controlled arpeggio.
  • Seed makes the random patterns and humanize repeatable.

Inputs

  • timeline row
    timeline_state_f32_v1
  • voices row required
    note_voices_f32_v1

Outputs

  • out row
    note_voices_f32_v1
Inputmode (Inputmode) Menu op('arp').par.Inputmode
Default:
soak
Options:
snapshot, hold, soak, swarm
Pattern (Pattern) Menu op('arp').par.Pattern
Default:
straight
Options:
straight, euclid, pendulum, randomwalk, burst
Order (Order) Menu op('arp').par.Order
Default:
up
Options:
up, down, updown, as_played, random, inside_out, outside_in
Gate (Gate) Float op('arp').par.Gate
Default:
0.45
Range:
0 to 1
Octave (Octave) Int op('arp').par.Octave
Default:
0
Range:
-4 to 4
Range (Range) Int op('arp').par.Range
Default:
1
Range:
1 to 4
Rate (Rate) Int op('arp').par.Rate
Default:
1
Range:
1 to 8
Steps (Steps) Int op('arp').par.Steps
Default:
16
Range:
1 to 32
Soak (Soak) Float op('arp').par.Soak
Default:
0.62
Range:
0 to 1
Inertia (Inertia) Float op('arp').par.Inertia
Default:
0.18
Range:
0 to 1
Density (Density) Float op('arp').par.Density
Default:
1
Range:
0 to 1
Ratchet (Ratchet) Float op('arp').par.Ratchet
Default:
0
Range:
0 to 1
Humanize (Humanize) Float op('arp').par.Humanize
Default:
0
Range:
0 to 1
Velocity (Velocity) Float op('arp').par.Velocity
Default:
1
Range:
0 to 2
Resetonbar (Resetonbar) Toggle op('arp').par.Resetonbar
Default:
On
Options:
Off, On
Seed (Seed) Int op('arp').par.Seed
Default:
17
Range:
-100000 to 100000