Making Music with Fractals

Photo: Lara Sobel plays with naturally-synthesized fractals by burning into wood via high voltage.

Fractals, those wacky self-similar, rough geometries that resemble so many patterns in nature, were once all the rage. Ravers and digital artists embraced them, only to get bored with them, apparently. To billions of years of evolution and natural phenomena, they’re still cool. And to me, there’s still plenty to talk about when it comes to thinking how fractals might be all the rage.

Composer Terran Olson, a musician with a long resume that includes work with the Ives Quartet and Quartet San Francisco, takes on the idea of fractals in a new article. Writing for our friends at Rain Pro – makers of music and visual pro PC laptops – Terran explores how fractal patterns could be applied to sound.

Exploring Audio Fractals

The results are fascinating: they’re a kind of fractal synthesis. Of course, that gets at the heart of the question: just how do you map a visual pattern like a fractal – or anything else visual – to music? The answers aren’t always intuitive. The biggest question is whether to work at the scale of sound (Terran focuses on individual samples and impulses), or to deal with musical patterns. I knew I had read a fractal article in Electronic Musician; sure enough, in 1999 EM did a story on fractals that focused instead on pitch mappings. (Bonus: Bach even comes up.)

Fractals and Music

Composer Gustavo Diaz-Jerez penned that story, and the results tend toward algorithmic music. Many of the tools are now gone, though some survive (Csound) and other tools (Max/MSP, Pd, SuperCollider, Reaktor, ChucK) could certainly fill in.

And, of course, for a truly high-level musical approach to fractals, skip the individual sounds or individual notes and write a whole song, like Jonathan Coulton’s brilliant fractal ode, “Mandelbrot Set.” (It should also help anyone needing to, erm, brush up on their fractal theory.)

Sadly, neither of these articles is especially useful as how-to – great on theory, but not so practical if you haven’t tried these things before. That begs for a new tutorial. Are you working with fractals these days? I’d love to hear what you’re doing.

Velato: What if Musical Notes Had Their Own Programming Language?

Composing music is not unlike programming – and either, at their best, can be expressive. In the early days of IT (before “IT” was even a term), many computer programmers came from a musical background. (And even early in the computer age, there was more call for software than symphonies – and more pay.)

But what if you could program music easily, using musical syntax in a programming language? That’s the question asked by languages like Velato. The commands actually aren’t as esoteric as you might expect; they include references to standard pitch and commands like “Change root note.” The language expresses notes, mapped to the alphabet, a bit like teaching the computer solfege. Using additional expressions, you can transform notes and generate musical materials.

The results sound a bit like an academic-sounding ragtime. And yes, they do sound as though they were generated by a computer. (Have a listen to a .MID file.)

For more on Velato:
Velato wiki page @ Esoteric Languages
A compiler built in .NET (Windows-only, though if you really wanted to I imagine you could quickly port to Mono or other environments)
An introduction [Rottytooth blog]

Creator Rottytooth is Daniel Temkin of New York. Along the same lines is Fugue, which specifies notes as intervals (oddly, the same way I learned atonal sightsinging, but that’s another story).

So, what use is all of this? Creating languages for music could be a first step to being able to write compositionally-useful generative music algorithms. That could allow composers writing for games, installations, performance, or software to create interactive music that generates itself without sounding like a bunch of random notes. And having an elegant, musical language to do so could allow you to sketch ideas with just a few keystrokes.

In fact, I’d argue that sitting with a big, monolithic music editor, you might actually spend more time and effort than a reduced language, once you learn it. I’m not sure these are mature enough to use yet, but the idea is fascinating. And who knows, maybe you’ll someday see this as a scripting option in the sequencer you already use.

Previously:
Code Your Own Sequencer? Archaeopteryx Generates MIDI with Ruby

Thanks to Grant Michaels, via Twitter, for the tip. (Grant’s Twitter feed includes lots of other goodies, too.)

Generative Music Interfaces of the Future – Look to Games?

I’m going to make this a minimalist post because I’ve said what I’ll say about Kodu, the one really cool part of Microsoft’s keynote yesterday, on Create Digital Motion. (Am I the only person who wishes Sparrow had just done the whole keynote?)

But have a look at the shot above. One of the complaints about generative and algorithmic music software (and music software in general) is that the interface has been so complex. Clearly, there are many other ways to design these interfaces, and in turn, to shape the way we use these to compose and perform music. Forget for a moment that games are “games,” and this this thing is “for kids,” and I think you’ll agree – there are lots of areas to explore, and lots of potential.

It doesn’t even require some futuristic music software. Imagine more complex rules in Ableton Live’s follow actions, made graphically.

Excuse me, I’m going to pick up some Tinker Toys to think about interactive design.

You Know, For Kids: Game Design, World Creation as Microsoft Research Previews Kodu [Create Digital Motion]

PS, I believe now more than ever that Music and Motion deserve separate sites, but have a look and I think you will find some overlap.

Help! I’m Trapped in an Acid-Colored Wash of a Thousand General MIDI Pianos!

Better support for music and audio is still evolving (as well as lots of stability and compatibility improvements), but I have faith open-source coding tool Processing [site | on cdmu | on cdmo ] could yield wonderful new visual interfaces for music. Daniel Piker has the latest addition, inspired by a recent post here:

FizzyNumberMusicMaker at Open Processing, a site for sharing Processing sketches – warning, makes sound immediately!

Built on the Game of Life ideas from our friend wesen (of ruin & wesen), this project uses colored cells to trigger elaborate washes of piano sound. He writes:

If the cell’s state is not just simply on or off, but a number in a range then you get all sorts of interesting musical runs and trills. You can also clearly see the connection between the colours and the sound.

The headline sums up the experience of using it. Ah, I remember countless hours spent with a desktop Yamaha GM unit and my old Roland Sound Canvas SC-55. But even if the sound of a thousand attacking General MIDI pianos makes you hide under your desk, you ought to be able to see how a simple interface can yield lots of different results. I can’t wait to see what’s next. Previously:

Build Your Own Game of Life Sequencer in Processing: Video Featuring rwmidi

Since then, I’ve gotten to hang out with wesen in Berlin. Basically, rwmidi has a little ways to go. The biggest issue is how to schedule events. Processing is set up to base timing on framerate, which doesn’t work all that well for music applications, which require greater accuracy. There’s also the tantalizing possibility of figuring out a way to slave Processing sketches to MIDI clock – so you could have Ableton Live running, then pull up a Processing sketch, for instance. wesen is working on those problems, but if you’ve seen good solutions outside the (somewhat limited) Java APIs, let us know.

Hands-on with Bloom, New Generative iPhone App by Eno and Chilvers

Play this track:

 

Play this track:

 

Bloom is a new generative musical application for iPhone and iPod touch, created by Brian Eno and software designer Peter Shilvers. It’s quite simple, but if you’re looking for some soothing musical strains to float out of your mobile Apple device, this is your ticket. At launch, you’re given a choice of either using a pre-determined set of rules, or tapping in your own parameters and patterns. The touch interface lets you use your fingers to add note patterns, which then repeat and mutate. If you make your own composition, you’ll start those patterns from a blank slate, but even if you choose an existing composition, you can tap solos over the top. The taps turn into patterns that transform themselves when the system is “idle,” rather than repeating indefinitely.

The results aren’t terribly deep – everything has a more or less similar ambient vibe, and tapping patterns in feels only barely interactive. It’s tough to predict the results and the patterns generally mutate on their own. The app is clearly geared for casual users, though it’s pretty wonderful for that audience. If you want depth, I’d stay tuned for the launch of RjDj; its generative apps, built in the open-source modular multimedia software Pd, are virtually unlimited in their musical capabilities, and they make use of the iPhone’s mic and sensors. (More on RjDj coming later this week.) See also full-featured generative software on PC/Mac, including the free Nodal, the excellent and deep Intermorphic offerings (from a team that has collaborated with Eno in the past), or even the game soundtrack for EA’s Spore, led by Eno as composer.

But that said, the compositions here are really beautiful, and it’s fantastic to watch the Apple mobile morph from simple playback devices into generative, interactive computers. Any fan of Eno or generative music will definitely want to snap this up for US$3.99.

Bloom @ iTunes App Store

Here’s what the app sounds like:

read more