Risset rhythms: Pure Data implementation of eternal accelerando

Risset eternal accelerando

Jean-Claude Risset described the auditory illusion of an “eternal accelerando”, where, similar to Shepard tones for pitch, a rhythm can be structured and played back in a way that creates the perception of constant acceleration.

In his 2011 paper “Scheduling and composing with Risset eternal accelerando rhythms”, Dan Stowell provided a solution for implementing eternal accelerandos on (rhythmic) audio samples by employing variable play back rates and amplitudes distributed to a number of sample play back streams that run synchronized.

Illustration of Risset rhythm streams in Stowell, 2011

Implementation for Pure Data

Risset Sampler is a Pure Data implementation of an eternal accelerando following Stowell’s paper.

In the patch, there are 5 streams set up to play back the same drum loop sample in different rates and amplitudes to generate the eternal accelerando effect.

The individual play back rates and depending amplitude envelopes for each stream are calculated with Stowell’s formulas (2) and (3) in the pd stream_X subpatches.

Examples and source code

There are three examples of the running patch on YouTube

The code is available on GitHub.

Sampler component jaycee.pd

The repo also contains a modular, 2 channel component version of this implementation (“jaycee.pd”) that can be used in compositions..

The component is useful to set up full compositions based on Risset rhythms. As an example, I’ve remixed my track “Ting” from Black Plastics Pt. 5 into a Risset rhythm version.

Update: “Risset Remixes”

I’ve released three remixes based on my Pure Data implementation described above. They are available via Nina and Bandcamp. More info here.