Terry Riley's "In C"

A Journey Through a Musical Possibility Space

Posted on by Tero Parviainen (@teropa)

In early 2015 I came across a piece of music that was unlike anything I'd ever heard before. It was called "Africa Express Presents: Terry Riley's In C Mali," which didn't ring any bells for me at the time, though it involved a number of musicians I like, including Brian Eno.

When I hit "play," I was surrounded by a cloud of music that seemed to contradict itself at every turn — as if it was in a state of suspended animation, but it kept changing all the time. It was filled with energy and forward motion, yet it was somehow calming. It was highly repetitive but organic. It was rhythmically intricate but it grooved. It was often hard to pin down, but it didn't seem very complicated.

Africa Express: "In C Mali". Adama Koita on kamel n'goni. Alou Coulibaly on calabash. Andi Toma on kalimba & additional percussion. André de Ridder on violin, baritone guitar & kalimba. Badou Mbaye on djembe & percussion. Brian Eno, Bijou & Olugbenga on vocals. Cheick Diallo on flutes. Damon Albarn on melodica. Defily Sako & Modibo Diawara on kora. Guindo Sala on imzad. Kalifa Koné & Mémé Koné on balafon. Nick Zinner & Jeff Wootton on guitar.

A quick Google search brought me to the Wikipedia article about "In C," which had some phrases in it that really tickled my interest. It talked about the piece consisting of "53 short, numbered, musical phrases" with musicians having "control over which phrase they play" and that each phrase "may be repeated an arbitrary number of times." It sounded more like a description of a process than a description of a musical composition.

What I was to learn is that "In C" is a foundational and revered work of musical minimalism – a form of music where these kinds of open ended processes are front and center. These processes, designed by composer Terry Riley, have unfolded in different ways not only in this performance by the Africa Express project, but in the countless other performances of "In C" that have been given in the last 53 years all around the world.

In this article I'm going to share what I've learned about "In C" in the two years following my first encounter with it. We'll discuss the composition's origins in drones and tape loops designed to alter our perception of time. We'll discuss how its open architecture allows a unique piece of music to be generated for every single performance. We'll look at some of the manifold performances and experimental visual and software projects it has inspired in the five decades following its 1964 conception in the then 29-year old Riley's mind .

Many of the insights in this article are informed by Robert Carl's excellent book Terry Riley's In C

The book contains an in-depth study about the history, musical content, and legacy of "In C". Carl draws a detailed picture of the piece based on interviews with people involved in the story, including Riley himself, Steve Reich, and Pauline Oliveros.

Terry Riley featured in The Drone

Total Disruption Of Time
How Drones and Loops Led To "In C"

Most music that has ever been written and performed is organized into familiar narrative structures: Notes and rests combined give rise to verses, choruses, and songs. All of these structures have well-defined beginnings, dramatic arcs, and endings that listeners recognize and expect to hear.

But alongside this musical mainstream there's a lineage of experimental music where one gets to play with these structures. One can consider musical time as plastic, allowing for all kinds of transformations: Stretching and compressing, looping, bending, warping, and folding time on top of itself.

La Monte Young. Image: Co Broerse.

This is something that Terry Riley's friend and UC Berkeley classmate La Monte Young started doing in the late 1950s. He became a practitioner of a kind of music that alters the listener's perception of time by stretching it to the extreme: Drones.

An early example of this is Young's first major composition, Trio for Strings, which unfolds slowly. Very, very slowly. It begins with a C# note played for about 4 minutes, and it continues with the same glacial pace for about an hour. The effect of this is to focus the listener's attention in the individual sounds that form the music. By zooming in the time perspective, Young treats the music as a fractal structure where we can find the symphony in the micro as well as the macro.

As an effect this somewhat resembles the various Paulstretch clips we now have on Youtube. While many of them are just posted because they're funny, some are actually very beautiful!

In the early 1960s Young started exploring these ideas further in the context of the Theatre of Eternal Music, a collective that Terry Riley was also an occasional member of. The multimedia performances of the Theatre were all about sustained drones, discordance, and feedback – a sound that member John Cale would later integrate into the music of The Velvet Underground.

"It was total disruption of time as we knew it. It was like being in a time capsule and floating out in space somewhere waiting for the next event to happen. And I enjoyed that kind of waiting."

Young's drone works would reach their logical conclusion in the Dream House sound and light installation, which he has worked on in collaboration with his partner Marian Zazeela since the 1960s. Opened for the public in its current location in Lower Manhattan in 1993, it features custom oscillators that have been producing the same sustained harmonies for several decades. These are notes not just slowed down, but brought to a standstill.

At the same time when Young was exploring sustained notes, Riley was also about to discover a method for disrupting time. He was strongly influenced by what his friend was doing, and likened it to "going somewhere on a spaceship". But instead of following Young into drone composition, Riley found similar time-altering capabilities through technology. In particular, in many of his early works Riley would employ magnetic tape because it proved to be a very elastic medium for playing with sounds: You could cut it, splice it, and loop it.

A reel-to-reel tape recorder.
Photo: Matt Donovan.

It is kind of hard to imagine now, but in the early 1960s the whole idea of loops – the technique of repeating a sound over and over again – was nowhere near as ubiquitous as it is now. This was because the technology for constructing loops simply hadn't been around for very long. It only really took off when magnetic tape recorders became commonplace after World War II.

Tape loops proved to be a powerful tool for many experimental musicians. Pierre Schaeffer and Pierre Henry used them in their musique concrète sound collages. Karlheinz Stockhausen used them to synthesize novel timbres. Steve Reich found in them the gradual processes that would largely inform the early years of his career. And The Beatles with George Martin used them in their studio innovations that would revolutionize the whole recording industry.

It is from tape loops that Riley too found a way to achieve the kind of timelessness that Young had achieved with drones. By repeating and overlaying sounds on top of themselves and each other, you could mess with the listener's perception of time and produce aural timelines of pure synthetic construction. Riley's first work that demonstrated this was 1961's Mescalin Mix. It's a tape work made by applying various loop, overdub, and echo effects to human voice, bird sounds, and piano.

Terry Riley: Mescalin Mix (1961)

The name of the piece, "Mescalin Mix,” hints at another important influence on the early works of both Riley and Young, who were after all embedded in the 1960s counterculture: The use of psychedelic drugs. Peyote, LSD, and cannabis played an important part in their musical explorations. Young would get the Theatre of Eternal Music "high for every concert." However, this drug use doesn't seem as much recreational as it does instrumental. It was a crucial component to the disruption of time that was a central idea in their music.

Young stretched sounds with drones, and Riley repeated them with loops. He would continue to do so in his later tape works, such as 1963's Music For The Gift and 1969's Poppy Nogood And The Phantom Band. But loops also bring us to the first key to unlocking the puzzle that is "In C".

Although "In C" is not a tape work, and never was, loops are central to how the piece is constructed. In works like Mescalin Mix, Riley had discovered what looping could do in his music. "In C" was an attempt to transfer the idea of loops into live music. Instead of having a piece of tape going round and round, a loop would be constructed by having a musician repeat a phrase over and over again. This was not to have humans act like machines, but to achieve the time-altering power of loops in music that is performed live by human beings.

Here's a simple musical phrase, which is surrounded by repeat signs (the : sign on both sides). These signs communicate that the phrase should be repeated.

The complete musical score of "In C" consists of 53 "loops" of exactly this kind. Though usually repeat signs just mean that you should play a section twice, Riley used them to indicate more permanent loops. Each phrase here is, in fact, to be repeated an indeterminate number of times.

"In C" score by Terry Riley. CC-BY-SA-3.0

This is the genetic code of "In C", present in all of its realizations. If you listen to any performance of the piece, such as the Africa Express one mentioned earlier, you will hear these patterns in there.

What's striking about this though is how extremely economical it is. There's not much music here at all! There's just this one page of notation in the whole "In C" score. And the 53 patterns on the page are very short – only a few beats on average. If you just listen to them back to back, you'll be done with the piece in just a couple of minutes. Even if you loop them, it's unlikely that you'll spend very long on each pattern.

But the actual performances of "In C" that you hear sound much more complex and varied than this! There's something else going on here.

A Musical Possibility Space
The Open Architecture of "In C"

If those 53 loops form the entirety of the musical material of "In C", how exactly does one get from that to the shimmering polyphonies you hear when the piece is performed?

Here we need to turn back to the score, because in addition to the notated patterns it contains a set of performing directions that outline an approach to interpreting and performing the music. There's two pages of directions – which means that in this score there's actually more English than there is music notation!

"In C" score by Terry Riley. CC-BY-SA-3.0

There are a few key pieces of information here that allow us to understand how exactly a performance of "In C" plays out.

All performers play from the same page of 53 melodic patterns played in sequence This first rule is fairly straightforward. Whenever you perform "In C", everyone plays the score in the same order, starting at pattern 1 and ending up in pattern 53. There's nothing surprising about this, as it is how pretty much all Western music is played.

Any number of any kind of instruments can play. A group of about 35 is desired if possible but smaller or larger groups will work. This defines "In C" as an open instrumentation score, which is one of the reasons there's so much variety between different performances of the piece: You can play "In C" with any musical instruments with groups of any sizes.

Patterns are to be played consecutively with each performer having the freedom to determine how many times he or she will repeat each pattern before moving on to the next. Now, this is where it gets really interesting! What Riley is saying here is that every performer goes through the patterns at their own pace. They have the freedom to keep repeating each pattern for as long as they feel like it before they move on.

What this means is that when you have several people playing the piece, they're not all going to be playing the same thing at the same time. Each player is on their own unique timeline.

Each pattern can be played in unison or canonically in any alignment with itself or with its neighboring patterns. One of the joys of IN C is the interaction of the players in polyrhythmic combinations that spontaneously arise between patterns. Some quite fantastic shapes will arise and disintegrate as the group moves through the piece when it is properly played. Here Riley is describing the desired effect of those free-form timelines. When players decide for themselves how they go through the piece, the overall combined music they make becomes an unpredictable network of events that's musically much more complex than any of the individual patterns. Different patterns will overlap with each other. Even a single pattern can overlap with itself in many different ways, forming musical canons.

This is really the most elegant aspect of "In C": The musical material is simple and there are few rules, but when we put it all together a piece of music emerges that's way more complex than its ingredients. The whole is so much greater than the sum of its parts.

But if there's so much freedom involved here, how can it still sound good and not devolve into cacophonous, amorphous noise? Well, for one thing, there is one important restriction to the free-form architecture just described:

As the performance progresses, performers should stay within 2 or 3 patterns of each other. It is important not to race too far ahead or to lag too far behind. So even though players have their own, individual timelines, they should strive to stay fairly close to each other. This is significant because by having all players stay close together, Riley retains a certain narrative structure in the piece. When you listen to a performance of "In C", you will experience recognizable transitions in the music as the players arrive at certain patterns relatively close to each other. This could not happen if some players had drifted 10 or 20 patterns away from each other.

When "In C" is played, the performers move through the piece at their own pace but collectively they all stay within about 3 patterns from each other.

This also serves to make the score modular: Even though patterns may be overlaid on top of each other in unexpected ways, in general this will only happen between neighboring patterns. As a composer, Riley has designed patterns 2, 3, and 4 to all be compatible with each other so that they sound interesting together, but he needn't do this for, say, 2, 9, and 17, because they will never be sounding at the same time.

Let's take a concrete look at how this works. In the following we have three players, playing three different instruments. We'll have them play the first 6 patterns of "In C", but we'll do it by essentially rolling the dice and generating a random number of repetitions for each of the patterns. I encourage you to try it a few times to see how the music varies even with such a simplistic trio.

"In C" Patterns 1-6 Randomized

As we see here, the music does come out differently every time, but still it always generally sounds good. Sure, some combinations are better than others, but it always more or less works. We see how the neighboring patterns may be overlaid on top of each other in many different ways, and how it's actually pretty hard to predict how it'll sound. And we also see how even a single pattern becomes more interesting when two or more players are playing it with different timings.

Another way to look at "In C", then, is that it's really not just a musical composition. It's actually a whole universe of possible musical compositions. Every time it's played, a different piece of music emerges. It has a similar narrative structure every time, but the specifics are always entirely different.

And it is a very large universe indeed. Let's think of it this way: Every time an individual player arrives at the end of the pattern they're currently playing, they're faced with a choice: "Do I repeat this pattern again, or do I move on to the next?" This is like a fork in the road, with each option leading to a different musical outcome.

A solo player has a choice to make when they reach the end of a pattern.

If we consider two players playing the piece together, when they both reach the end of a pattern at the same time, they both have this decision to make. The road for the combined duo forks into four directions, one for each of the combinations of options they may choose:

When both players in a duo reach the end of a pattern at the same time, their choices may lead to four different futures.

A trio, then, expands the possibilities into eight directions:

For a trio, we get up to eight different futures.

So we see that by adding players we quickly get quite a large possibility space because of how many musical combinations could be played.

And the thing is, we've only talked about one decision point so far, but of course as the music progresses one choice always leads to the next fork in the road moments later. There might not always the same number of options because not everyone will always be at a decision point at the same time, and sometimes you can't move on because you'd be too far ahead of the rest of the ensemble. But there are still plenty of forks in the road.

Each choice leads to the next fork in the road. In this case there are only four options, because player A is still in the middle of pattern 6 when players B and C have reach the end of pattern 5.

When we have our trio of players making these decisions over and over as they play, they're essentially navigating a path through a vast decision tree, where every branch is some combination of patterns that could be playing together at a moment in time.

This way of looking at all the possible ways the narrative could unfold comes from the world of game theory. Game trees are often used to explore the possible outcomes of a particular game like tic-tac-toe or chess (or a missile crisis).

A tic-tac-toe game tree.

Each node in the tree is a state that represents a particular situation in the game at a moment in time. In tic-tac-toe a state consists of the positions of Xs and Os on the board. For "In C" a state is the combination of patterns the players were playing at a point in time during the performance (like (1, 1, 2)). Each edge then is a decision made at some point in time by one or more players to "repeat or move on".

You can explore a game tree of "In C" here. We begin in a state where none of the three players is playing anything (-, -, -). If you go and click on the leftmost option, you'll move to a state where the third player is playing pattern 1 while the two others are still silent (-, -, 1), and that state will then open up a number of subsequent states that might happen after that. As you expand the tree, on the left side you'll see how the music turns out based on the choices you have made.

"In C" Play Tree for A Trio

What we're doing here is blazing a path through the musical universe of "In C", collapsing Riley's quantum foam into one particular realization of the score. And that realization is just a microscopic sliver of all the musical potential contained in the space. Every choice a player makes leads to one possible future, discarding several other options. And behind each of those options not chosen there are vast amounts of musical compositions that will never be.

And just how large is this possibility space? It's hard to intuit, but we can calculate a rough estimate: The size of a game tree is roughly equal to the average number of options on each decision point (the "branching factor") raised to the power of the number of decision points.

If we set our average branching factor to, say, 4 (assuming 1-8 choices at each point) and the number of decision points to 265 (conservatively assuming a player would repeat each pattern 5 times on average), our game tree complexity would be 4265 = 35 * 10158. That's 35 followed by 158 zeros. A very large number. Suffice it to say no one will ever hear all the combinations made possible by the "In C" performing directions, even if everyone in the world did nothing but play the piece in trios until the heat death of the universe.

But the thing is, this search space will also grow exponentially for every player added. Four players would have up to 24 = 16 options at each point. Riley's score suggests an ensemble of 35 players, which generates up to a kaleidoscopic 235 = 34,359,738,368 options at every single fork in the road!

All of this means that in any practical terms, there's an infinite number of ways you can play "In C". Throughout the history and future of our planet there will never be two performances that are exactly the same. But still it'll sound like "In C" every time you play it, because of the careful way Riley has set up the constraints for navigating the space.

"It was quite clear with these pieces, for example "In C", that the composer didn't have a picture of the finished piece in his head when he started. What the composer had was a kind of menu, a packet of seeds, you might say. And those musical seeds, once planted, turned into the piece. And they turned into a different version of that piece every time."

As we have discovered, the potential music contained in the "In C" possibility space is astronomical. So how exactly does one deal with that when performing the piece? Do you just take a random walk through the game tree and call it a day?

Well, if you listen to any performance of "In C", it's quite clear that you're not listening to music that can be reduced to a simple algorithmic representation. This isn't procedural music in the same strict sense as Steve Reich's early works are, for example. The systemic aspects of the piece – rules and tree representations – are especially attractive to someone like me who's a software engineer rather than a musician, but they really don't paint the full picture of "In C".

Riley, in addition to being a composer, is an improvising musician. Early in his career he worked as a jazz and ragtime pianist. Like La Monte Young, he was a long-time student of Indian ragas at the school of singer Pandit Pran Nath. And if you look at Riley's body of work as a whole, you'll notice that improvisational music features in it prominently – much more prominently in fact than fully notated music. Works like the hypnotic electric organ pieces A Rainbow In Curved Air and Persian Surgery Dervishes demonstrate this aspect of his career.

Riley improvising on an electric organ

Improvisational practice is an important component of "In C" as well. Performing "In C" is not a matter of mechanically following a predefined ruleset. Rather, it is a complex exercise in playing, listening, and group dynamics. The system is not the music here. The system is just a scaffolding for the music. And it is up to the musicians performing the piece to build the cathedral into the scaffolding.

Indeed, what I keep hearing over and over again while studying "In C" is how challenging it is to perform. This is kind of counterintuitive because it seems so utterly simple: Short musical patterns and a few simple rules, suggesting a kind of "anything goes" approach. But with great power comes great responsibility. When a musician performs "In C" they can choose what to play and when to play it, but the onus is on them to make it sound interesting and to make sure they're aligned with the rest of the group.

With this in mind, if we take another look at the "In C" performing directions we'll see how these concerns about an individual's contribution to the whole are deeply integrated into the piece.

It is very important that performers listen very carefully to one another and this means occasionally to drop out and listen. "In C" is an orchestral piece, where everyone's focus is more in the overall sound than just their individual output. Riley wants to extend your attention from what you're playing to include what everyone else around you is doing as well.

And he shares an important tool to help with this: Just step back and listen. Not everyone needs to be playing all the time. It's hard to hear others when you're concentrating on your own playing, and by taking a moment to look at the bigger picture you can see more clearly how you can contribute most effectively.

It is important to think of patterns periodically so that when you are resting you are conscious of the larger periodic composite accents that are sounding, and when you re-enter you are aware of what effect your entrance will have on the music's flow. Here Riley wants you to imagine ahead what the effects of your output will be on the music. You have to compose the future music in your mind. In other words, instead of blindly choosing an option at each fork in the road, you need to imagine what things will be like past that fork before you actually take each turn.

"There's a lot of listening to other people, a lot of laying out when it made sense, and a lot of trying to play the same pattern as someone else but to sound interesting in a canon way, and to be aware of where people were, how far ahead you were."

It is important not to hurry from pattern to pattern but to stay on a pattern long enough to interlock with other patterns being played. This complements the discussion about listening to what others are doing: When you start playing a pattern, you need to give other people a chance to react to that before you rush on to the next.

It's about recognizing that what you do affects what other people will want to do. The "imagining ahead" mentioned above is impossible to do if the music never stays still for long enough.

As an ensemble, it is very desirable to play very softly as well as very loudly and to try to diminuendo and crescendo together. One thing completely absent from the notated score of "In C" is any instruction on dynamics, which means there is no preordained plan for how loud or soft a given note or pattern should be played. This is left for the performers to decide.

And since there's also no conductor in the piece, the ensemble really acts like a self-organizing system that decides collectively when to go louder and when to go softer. I'm sure decisions about this are often made during rehearsals, but there's also an aspect of this that's left open to be decided during a performance. What this means is that as a player you need to be attuned to the dynamics going on around you, and join the crescendos and diminuendos as they emerge.

"You feel so liberated and free. And yet, what’s tying you to the piece is what you’re hearing and what you might be able to do next that could be really wonderful.”
David Harrington of Kronos Quartet, 2009

The Pulse

These challenges in performing "In C" as a collective also gave rise the most distinctive sound you hear in almost every performance of the work: The Pulse.

The ensemble can be aided by the means of an eighth note pulse played on the high c's of the piano or on a mallet instrument. Whenever "In C" starts playing, this constant beating of high "C" notes is the first thing you hear. It is also the only thing that remains the same throughout the whole performance, all the way to the moment when all other players have bowed out after that final crescendo of pattern 53. You may not always it hear it when the going gets loud, and you kind of stop paying conscious attention to it because it never changes, but it is always there.

A Sampling of "In C" Pulses 1968-2015

The function of the pulse is to provide a stable rhythmic grid on top of which the ever-changing musical patterns build. On top of that, it acts as a musical element in an of itself, coloring all the music with that ever-present "C".

Interestingly though, the pulse wasn't present at all in Riley's original conception of the piece. It came about during the rehearsals building up to the piece's 1964 premiere in the San Francisco Tape Music Center. People were finding it difficult to stay in rhythm while playing the divergent, polyrhythmic patterns. Steve Reich, who was part of the ensemble, suggested they needed something like a drummer to anchor the piece:

Steve Reich on the pulse of "In C"

I love the idea that an element that's so integral to the composition came about from purely pragmatic concerns. It wasn't there when Riley conceived the piece. It was just added as a solution to a practical problem that the musicians faced during rehearsals. Somehow this just really demonstrates the open philosophy of "In C": Just like performing the piece is organic and open to the individual contributions of each player, so was the composition process itself.

53 Years Of "In C"
Performances And Experiments

"In C" was first introduced to the world at the San Francisco Tape Music Center in November 1964 by an ensemble of musicians formed of Riley's friends and collaborators, including Steve Reich, Pauline Oliveros, Morton Subotnick, Ramon Sender, and Jon Gibson. Unfortunately, no recordings of this event were made, and the first recorded performance only came about a few years later. Recorded in New York in 1968, it features an ensemble of 11 musicians including Riley himself on saxophone, Jon Hassell on trumpet, and Stuart Dempster on trombone.

An interesting aspect of this release is that unlike most recorded classical music – and most recorded versions of "In C" – this was a multitrack recording. Undoubtedly influenced by both Riley's own tape works and the emerging studio practice exemplified by records like Sgt. Pepper and Pet Sounds at around the same time, the ensemble played the piece three times and the result was then built in the studio as a combined mix of the three passes. This means that the first released version of "In C" was a studio construction, rather than a naturalistic snapshot of a single performance.

In the five decades following that 1968 release, untold amounts of people have gravitated towards the beautiful open expanse "In C", bringing to it their own creativity and imagination. On Youtube alone, you can find countless recordings of the piece by performed by chamber ensembles and bands of all shapes and sizes. Some notable examples of this are the rollicking 1998 performance by Bang On A Can All-Stars, a performance with electric guitars led by Portishead's Adrian Utley, and a purely electronic performance by artists associated with the Tigersushi label.

You could literally spend months listening to nothing but "In C" – and still never hear the same thing twice! Just compare the 1968 performance to this gorgeous 2005 realisation with a simple combination of vocals, marimbas, and vibraphones by Ars Nova Copenhagen and the Percurama Percussion Ensemble. It is instantly recognisable as the same composition but approaches it from a completely opposite angle with its neat and organized layout:

Then compare either of those two performances to this one from 2015 by Terry Riley himself with the Stargaze group. This is one of the few performances I've come across that omits an audible pulse. This changes the nature of the whole piece, and seems to open it up to a lot more improvisation around the score than what you usually hear.

Terry Riley & Friends – 'In C' (2015). The first 10 minutes or so of this performance contain a spectacular buildup through the first 6 patterns.

Aside from purely musical interpretations, "In C" also continues to inspire many from a visual perspective. Performances of the piece often incorporate lights, backdrops, and generative visuals of different kinds.

The story of visualizing "In C" actually originates all the way back in the 1964 premiere, which included a real-time overhead light projector show by the artist Anthony Martin. He furnished the San Francisco Tape Music Center performance space with an organic ceiling projection using water, oil, sand, and string. Unfortunately no images of this remain but I can imagine they were not at all unlike the ones by the Joshua Light Show in a 2013 performance displayed here:

Pantha du Prince & The Bell Laboratory with visuals by The Joshua Light Show at The Barbican, 2013.
"One must realize that this component made the premiere of In C a multimedia event. Martin was developing a performative process in the visual domain that paralleled the slowly evolving changes that make In C both distinctive and revolutionary."

The story of the multimedia premiere inspired the 2015-2017 work "In Code" by a trio of Dutch artists, which incorporates a "lens" with some spellbinding generated visual textures. The lens accompanies their version of "In C" performed with harp and electronics.

In Code by Gwyneth Wentink, Wouter Snoei, and Arnout Hulskamp.

Speaking of code, there is no shortage of examples of "In C" inspiring interpretations in my own field of software as well. This is not surprising given the nature of the composition, whose open "possibility space" can be explored using randomized and heuristic software algorithms as well as interactive user interfaces.

Daniel Iglesia's Riley-O-Matic is written, appropriately, in C, and is one of the earliest software examples I've come across. It takes a probabilistic approach to the piece by randomly generating music modeled after the rules of the score. A similar approach is taken by a ChucK implementation by Jim Bumgardner from 2006.

Perhaps the most sophisticated project that takes this "autonomous randomized player" approach is Gregory White's delightfully named "In C++". It consists of C++ software that hosts a number of "virtual performers" that probabilistically simulate the players in a performance of "In C". The performers produce MIDI outputs, which can then be fed into a Digital Audio Workstation or some physical instruments, or anything else that consumes MIDI.

An installation based on Greg White's In C++, displayed at Metasis 2016. It features an ensemble of Raspberry Pi computers.

Jake Albaugh's JavaScript & Web Audio implementation from July 2016 also takes a randomized approach, with an ensemble of Tone.js synth players randomly proceeding through the score. But he also adds a visualization synchronized with what's going on musically, which connects his work to the history of "In C" visualizations starting from 1964.

Jake Albaugh's "In C" Codepen

Partly inspired by Albaugh's work, my own JavaScript implementation of "In C" from September 2016 also attempts to both perform and visualize "In C" in the web browser. What I tried to do differently, though, is to give the listener the power to control the performance instead of using randomized processes. Like Albaugh's version, my app has automated performers that play the piece, but here the user decides when and in what order they proceed though it. In other words, the user controls which path through the "In C" possibility space is taken.

My own web-based "In C" player

Another important influence on this version came from the string of generative music apps Brian Eno and Peter Chilvers have created over the last decade. I consider my app a kind of generative, "Choose Your Own Adventure" music player designed to play this one piece: "In C". It lets the listener partake in the creation of the music, which as a result comes out differently every time it's played. But you still don't need any particular skills to play it. I think this makes it an interesting hybrid between a musical instrument and a music player.

But nothing I've seen brings together all the elements of "In C" quite as beautifully as Bryant Smith's Repeater Orchesta – a web app that listens to a live performer and accompanies them with an orchestra of "repeaters" that restate whatever they play with a randomized delay.

This combines Riley's open architecture with a software implementation like the examples above. But it also incorporates a human performer, which connects this realization to the roots of "In C" in improvisational practice. The result is an improvised performance by a system with both human and machine elements.

Repeater Orchestra by Bryant Smith
"In a crazed world laced with violence and destruction Terry Riley has consistently been a force for peace. Through his gentle leadership a path forward has emerged. Terry sets the standard for what it means to be a musician in our time."
David Harrington of Kronos Quartet, 2015

Special thanks to Geeta Dayal for helping out with this article.

Creative Commons License
This work is licensed under a
Creative Commons Attribution-ShareAlike 4.0 International License.

Tero Parviainen is an independent software developer and writer.

Tero is the author of two books: Build Your Own AngularJS and Real Time Web Application development using Vert.x 2.0. He also likes to write in-depth articles on his blog, some examples of this being The Full-Stack Redux Tutorial and JavaScript Systems Music.

comments powered by Disqus