MIDI generator for perpetually accelerating or decelerating rhythms.
The Risset rhythm is the temporal equivalent of Shepard tones. Multiple streams play the same pattern at different tempos, with amplitude crossfades creating the perception of continuous tempo change. When looped, the rhythm appears to accelerate (or decelerate) forever. Supports arbitrary polyrhythmic ratios like 3:2, 5:4, or 3:5.
How it works:
Two layers play at different tempos with opposing velocity curves. Layer 1 fades out while its tempo changes; Layer 2 fades in at a different tempo. At the metabar boundary, the fading-in layer has reached the starting tempo of the fading-out layer, creating a seamless loop.
Available as:
Python script — generates MIDI files with customizable ratios and directions
Max for Live MIDI Tool — generate patterns directly into MIDI clips in Ableton Live 12
Features:
Arbitrary tempo ratios (2:1, 3:2, 5:4, etc.)
Acceleration or deceleration direction
Arc mode (full velocity arc) or Ramp mode (single crossfade)
Configurable BPM and output length
References:
Based on research by Stowell (2011) on Risset eternal accelerando rhythms and Volkov (2023) on polyrhythmic Risset rhythms.