Introducing The Humming of the Strings

Hello! I’m sorry that I haven’t been around much in the last few months, which have been rather busy for me. I’m hoping to continue more regular posting now, though, starting with the announcement of a new project: Point at Infinity‘s first spin-off blog, The Humming of the Strings.

Loyal readers will remember a few posts here on Point at Infinity about music. We had a post about the Shepard tone, an aural illusion that seems to perpetually rise in pitch, two posts about the Risset rhythm, the Shepard tone’s rhythmic cousin, and a post about Euclidean rhythms and their surprising connections with nuclear physics, computer graphics, and the Hebrew calendar. These were among the most enjoyable posts for me to write, and some of them were among the favorites of readers as well. Mathematics and music are two passions of mine, and there is a vast field of ideas to explore here, many of which don’t necessarily fit here on Point at Infinity. This is why I’m starting The Humming of the Strings, to provide a place for more in-depth exploration of musical topics that might be out of place here.

There is another, more technical reason for this blog. Over the last couple of years, I’ve sporadically been playing around with SuperCollider, an audio synthesis platform and programming language. It is a wonderful tool for exploring the connections between math and music, and I plan on using it to create music and audio samples for The Humming of the Strings, and on sharing what I learn in this process with the readers. I’m hoping that the details of the computer programming will be of interest to some readers, and I will try to make it as unintrusive as possible for those readers not interested in it. (I’m anticipating that most posts will consist of a non-technical body section followed by a technical appendix with details of the code.)

I hope you will join me over at The Humming of the Strings. I will likely primarily be posting there rather than here in the near future, though there may be some new content on Point at Infinity from time to time. Thanks for reading, and Happy New Year!

Advertisements

Infinite Acceleration: Risset Rhythms

In our most recent post, we took a look at and a listen to Shepard tones and their cousins, Shepard-Risset glissandos, which are tones or sequences of tones that create the illusion of perpetually rising (or falling) pitch. The illusion is created by overlaying a number of tones, separated by octaves, rising in unison. The volumes gradually increase from low pitch to middle pitch and gradually decrease from middle pitch to high pitch, leading to a fairly seamless continuous tone.

The same idea can be applied, mutatis mutandis, to percussive loops instead of tones, and to speed instead of pitch, thus creating the illusion of a rhythmic track that is perpetually speeding up (or slowing down). (The mechanism is exactly the same as that of the Shepard tone, so rather than provide an explanation here, I will simply refer the reader to the previous post.) Such a rhythm is known as a Risset rhythm.

I coded up some very basic examples on Supercollider. Here’s an accelerating Risset rhythm:

And a decelerating Risset rhythm:

Here’s a more complex Risset rhythm:

And, finally, a piece of electronic music employing Risset rhythms: “Calculus,” by Stretta.

 

Infinite Ascent: Shepard Tones

Have you ever been watching a movie and noticed that the musical score was seeming, impossibly, to be perpetually rising, ratcheting up the intensity of the film more and more? Or perhaps it seemed to be perpetually falling, creating a deeper and deeper sense of doom onscreen? If so, it is likely that this effect was achieved using a Shepard tone, a way of simulating an unbounded auditory ascent (or descent) in a bounded range.

To understand how Shepard tones work, let’s look at a simplified implementation of one. We will have three musical voices (middle, low, and high), with an octave between successive voices. The voices then start to move, in unison, and always an octave apart, up through a single octave, over, say, five seconds. As they go, though, they also change their volumes: the middle voice stays at full volume the whole time, the low voice gradually increases from zero volume to full volume, and the high voice gradually decreases from full volume to zero volume. The result will simply sound like a tone rising through an octave, and it can be represented visually as follows.

shepard_1

This by itself is nothing special, though. The trick of the Shepard tone is that this pattern is then repeated over, and over, and over again. Each repetition of the pattern sounds like a tone ascending an octave, but, because of the volume modulation, successive patterns are aurally glued together: the low voice from one cycle leads seamlessly to the middle voice of the next, the middle voice from one cycle leads seamlessly to the high voice of the next, and the high voice simply fades away. The result sounds like a perpetually increasing tone.

shepard_2

Note the similarity to the visual barber pole illusion, in which a rotating pole causes stripes to appear to be perpetually rising. Also, this whole story can be turned upside down, which will lead to a perpetually falling tone.

Let’s hear some Shepard tones in action! Now, in practice, using only three voices does not create a particularly convincing illusion, so, to make these sounds, I used nine voices, spread across nine octaves. Also, linearly varying the volume, as in the above visualization, seems to make it more noticeable when voices enter or fade away, so I used something more like a bell curve.

(Technical notes: These Shepard tones were created in Supercollider, using modified code written by Eli Fieldsteel, from whose YouTube tutorials I have learned a great deal of what I know about Supercollider. Also, I used a formant oscillator instead of the more traditional sine oscillator.)

First, a simple ascending Shepard tone:

The effect becomes more convincing, and the tone more interesting, if multiple Shepard tones are played simultaneously at a fixed interval. Here, we have two ascending Shepard tones separated by a tritone, a.k.a. the devil’s interval, a.k.a. half an octave:

Next, three descending Shepard tones, arranged in a minor triad:

Finally, two Shepard tones, with one ascending and the other descending:


The origins of the Shepard tone lie with Roger Shepard, a 20th-century American cognitive scientist, as a sequence of discrete notes. The continuous Shepard scale, or Shepard-Risset glissando, which our code approximates, was introduced by French composer Jean-Claude Risset, who perhaps most notably used it in his Computer Suite from Little Boy from 1968.

More recently, it has prominently been deployed by Christopher Nolan and Hans Zimmer, as the basis for the Batpod sound in The Dark Knight and in the Dunkirk soundtrack.


Cover image: M.C. Escher, Waterfall