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

A modular, 2 channel component version of this implementation can be found in the PD-components repository.

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.