- Audio
- Compose
Pattern
Purpose
Section titled “Purpose”Pattern turns the timeline and a scale into a performable musical part. It covers several roles, from lead melody and bassline to chord pulses, call-and-response phrases, orbit walks, and scatter patterns, all with artist controls for density, accent, humanize, tie, mutation, voicing, and octave. It is a flexible procedural sequencer for building parts without writing every note.
Wire a timeline clock into Input 0 and a scale into Input 1. Choose a Mode for the type of part, pick a Pattern shape and Rate, then route the out voices to an instrument. For a hand-built phrase, set Pattern to custom and dial the eight Degree controls.
Inputs and outputs
Section titled “Inputs and outputs”- Input 0:
timelinetimeline clock. Required. - Input 1:
scalescale context. Optional, keeps the part in key. - Output 0:
outemits the pattern as note voices.
Controls
Section titled “Controls”- Mode: part role.
melody,bassline,chord_pulse,call_response,orbit, orscatter. - Pattern: shape such as
custom,ascending,descending,pendulum,triad,pentatonic,neighbor,answer, oreuclid. - Rate: step speed from
half_steptoquad. - Rootnote: base pitch.
- Patternlength and Stepoffset: number of steps and where the pattern starts.
- Gate, Velocity, Density, Accent: note length, level, how many steps fire, and emphasis.
- Humanize, Tie, Mutation: timing looseness, note ties, and gradual change.
- Spread, Voices, Range, Inversion: voicing width, voice count, octave range, and inversion.
- Degree1 to Degree8: the scale degrees used by the
custompattern. - Seed: repeatable random elements.
- Use
customwith the Degree controls to write an exact phrase, or a preset Pattern for instant results. - Mutation slowly evolves the phrase over time, which is good for long generative sets.
- The same node can act as melody, bass, or chord part just by changing Mode.
Inputs
-
timelinerow -
scalerow
Outputs
-
outrow
Parameters
Section titled “Parameters” Rootnote (Rootnote) Float
op('pattern').par.Rootnote - Default:
60- Range:
- 0 to 127
Patternlength (Patternlength) Int
op('pattern').par.Patternlength - Default:
8- Range:
- 1 to 8
Stepoffset (Stepoffset) Int
op('pattern').par.Stepoffset - Default:
0- Range:
- -64 to 64
Gate (Gate) Float
op('pattern').par.Gate - Default:
0.55- Range:
- 0 to 1
Velocity (Velocity) Float
op('pattern').par.Velocity - Default:
0.8- Range:
- 0 to 1
Density (Density) Float
op('pattern').par.Density - Default:
1- Range:
- 0 to 1
Accent (Accent) Float
op('pattern').par.Accent - Default:
0.25- Range:
- 0 to 1
Humanize (Humanize) Float
op('pattern').par.Humanize - Default:
0- Range:
- 0 to 1
Tie (Tie) Float
op('pattern').par.Tie - Default:
0- Range:
- 0 to 1
Mutation (Mutation) Float
op('pattern').par.Mutation - Default:
0- Range:
- 0 to 1
Spread (Spread) Float
op('pattern').par.Spread - Default:
0- Range:
- 0 to 24
Voices (Voices) Int
op('pattern').par.Voices - Default:
1- Range:
- 1 to 8
Range (Range) Int
op('pattern').par.Range - Default:
1- Range:
- 0 to 4
Inversion (Inversion) Int
op('pattern').par.Inversion - Default:
0- Range:
- 0 to 3
Seed (Seed) Int
op('pattern').par.Seed - Default:
1- Range:
- 0 to 100000
Degree1 (Degree1) Int
op('pattern').par.Degree1 - Default:
0- Range:
- -24 to 24
Degree2 (Degree2) Int
op('pattern').par.Degree2 - Default:
2- Range:
- -24 to 24
Degree3 (Degree3) Int
op('pattern').par.Degree3 - Default:
4- Range:
- -24 to 24
Degree4 (Degree4) Int
op('pattern').par.Degree4 - Default:
7- Range:
- -24 to 24
Degree5 (Degree5) Int
op('pattern').par.Degree5 - Default:
4- Range:
- -24 to 24
Degree6 (Degree6) Int
op('pattern').par.Degree6 - Default:
2- Range:
- -24 to 24
Degree7 (Degree7) Int
op('pattern').par.Degree7 - Default:
0- Range:
- -24 to 24
Degree8 (Degree8) Int
op('pattern').par.Degree8 - Default:
4- Range:
- -24 to 24
Avoidamt (Avoidamt) Float
op('pattern').par.Avoidamt - Default:
0- Range:
- 0 to 1