Nodes
Rhythm nodes
Nodes for building, transforming, and combining rhythmic structures — from simple tuplets to deeply nested rhythm trees and stochastic rest insertion.
| Node | Inputs | Outputs | Description |
|---|---|---|---|
| Rhythm Tree | list tree structure number time-signature (default: 4/4) |
rhythm-tree | The core rhythm node. Defines a nested proportional rhythm structure where each level subdivides its parent proportionally. For example, (1 (1 2 1)) divides a beat into three parts with durations in ratio 1:2:1. Negative values indicate rests. Supports arbitrary nesting depth for complex metric subdivisions. |
| Tuplet Tree | number tuplet-type (default: 3) number beats (default: 1) number measures (default: 1) |
rhythm-tree | Generates a pre-built rhythm tree for a standard tuplet division, using MusicXML-compatible notation. Specify the tuplet type (3 for triplet, 5 for quintuplet, etc.) and how many beats and measures to fill. |
| Subdivide | rhythm-tree tree number beat-index list divisions |
rhythm-tree | Subdivides a specific beat within an existing rhythm tree. Targets a beat by its index and replaces it with a new set of proportional divisions. Use this to add rhythmic complexity to particular moments within a larger structure. |
| Tuplet | number n (default: 3) number in-space-of (default: 2) |
rhythm-tree | Creates a simple tuplet: n equal notes in the space of a given number of regular notes. A triplet is 3-in-2; a quintuplet is 5-in-4. The simplest way to introduce irregular subdivisions. |
| Mixed Tuplet | list divisions number in-space-of (default: 2) |
rhythm-tree | Combines regular and tuplet divisions within a single beat group. The divisions list can contain both simple integers (regular subdivisions) and nested tuplet specifications, producing rhythms that mix binary and ternary divisions. |
| Dotted Rhythm | number dots (1–3, default: 1) number beats (default: 4) |
rhythm-tree | Generates long-short dotted rhythm pairs. A single dot produces a 3:1 ratio; double dot produces 7:1. The pattern repeats to fill the specified number of beats, creating the characteristic uneven pulse of dotted rhythms. |
| Rhythm Repeat | rhythm-tree cell number measures (default: 4) |
rhythm-tree | Repeats a rhythmic cell across N measures, maintaining the original proportional structure. Use this to create ostinato patterns or to extend a rhythmic idea across a longer time span. |
| Insert Rests | rhythm-tree tree list mask (binary, e.g. [1,0,1,1,0]) |
rhythm-tree | Applies a binary mask to selectively silence events in a rhythm tree. A 1 in the mask keeps the event sounding; a 0 turns it into a rest. Inspired by Ferneyhough's approach to rhythmic filtering — the underlying proportional structure is preserved but events are selectively removed, creating patterns of presence and absence. |
| Rest Density | rhythm-tree tree bpf density-curve |
rhythm-tree | Controls rest placement through a BPF curve. At each time point, the curve value (0.0–1.0) determines the probability of an event being replaced by a rest. A rising curve gradually silences events; a falling curve gradually reveals them. Provides smooth, continuous control over rhythmic density. |
| Augment/Diminish | rhythm-tree tree number ratio (default: 1.0) |
rhythm-tree | Scales all durations in a rhythm tree by a multiplicative ratio. Ratio 2.0 doubles all durations (augmentation); ratio 0.5 halves them (diminution). Fractional ratios produce proportional stretching or compression of the entire rhythmic structure. |
| Rhythm Retrograde | rhythm-tree tree | rhythm-tree | Reverses the temporal order of all events in a rhythm tree. The first event becomes the last and vice versa, while preserving the proportional structure of each sub-tree. The rhythmic equivalent of playing a tape backwards. |
| Rhythm Rotate | rhythm-tree tree number steps (default: 1) |
rhythm-tree | Cyclically rotates event order by N steps, like a phase shift. Events that fall off one end wrap around to the other. Useful for creating rhythmic canons or exploring different starting points of a rhythmic pattern. |
| Duration Series | list durations (numeric series) number unit (default: 1/16) |
rhythm-tree | Maps a number series to a sequence of durations. Each number in the input list is multiplied by the unit value to produce a duration. Used in integral serialism to derive rhythms from the same numeric series that generates pitches and dynamics — the Darmstadt approach of total organization. |
| Quantize Rhythm | list free-durations number grid (default: 1/16) number time-signature (default: 4/4) |
rhythm-tree | Snaps free (non-metric) durations to the nearest value on a metric grid. Converts continuous time values into a notatable rhythm tree by rounding each duration to the nearest grid division. Essential for turning algorithmic output into performable notation. |
| Polyrhythm | number stream-A (default: 3) number stream-B (default: 4) number measures (default: 1) |
rhythm-tree stream-A rhythm-tree stream-B |
Creates two independent tuplet streams running simultaneously — for example 3-against-4 or 5-against-7. Each stream is output as a separate rhythm tree that can be paired with different pitch material and combined in a Voice Layer node for true polyrhythmic notation. |
Studies that use these nodes
Sibelius V — the swan hymn and its seams
Sibelius's Fifth as process: a scherzo tempo derived by metric modulation, the rocking-horn swan hymn under…
Tapiola — a pedal point and the forest above it
Sibelius's pedal point: a bass that never moves while the forest swirls above it, the Sixth's Dorian colour…
Sibelius VII — a theme that grows from its fragments
Sibelius's thematic germination: one theme revealed three notes, eight, then all sixteen at a time — and…
Russian Easter — one chant, five backgrounds
Changing-background variations: one obikhod chant, unchanged, under a drone, two chorales, a pandiatonic…
Flight of the Bumblebee — a chromatic engine
Flight of the Bumblebee as a machine: a falling chromatic wave interleaved with its upper neighbour…
The Rite of Spring — a chord, a cell, and additive meters
The Rite of Spring: the Augurs polychord with its irregular accents, a folk cell whose barline drifts, and…
Requiem Canticles — a rotational array
Requiem Canticles: a hexachord rotated and transposed into six rows, read across for melody and down for the…
The Black Page — statistical density
The Black Page: nested tuplets bar by bar, five against seven, a density envelope thickening the tuplets…
Inca Roads — the Lydian vamp, 19/16, and the angular line
Inca Roads: a two-chord Lydian vamp from typed chord symbols with its scale derived, a whole tune in 19/16…
Wire these nodes into a piece of your own.
Create a free account14 days of Composer Pro, no card needed. Every account opens with the Examples folder.