Xenakis: Geometry to Sound

with 3 Comments

Last week I had the great pleasure of giving a talk at Random Walks: The Music of Xenakis and Beyond. I must admit, I was a bit intimidated, since Sharon Kanach and James Hurley (both bona fide Xenakis experts) were also speaking. In fact, after their wonderful talks, there was not a whole lot left to say about Xenakis’ life and work, from the content side of things. Between them, they managed to more or less completely describe him as a person, summarize his work, and even briefly outline some of the technical underpinnings to his compositional technique.

So, to complement their contributions, I thought it would be quite interesting to actually work through an implementation of the translation process between sonic entities (a Xenakian term for a sound or collection of sounds) and spatial arrangements. The wonderful thing about Xenakis is that he was so rigorous in his development of this approach to composition, that most of the technical details are all clearly laid out in his book, Formalized Music. There exists a number of implementations of this already: UPIC, IanniX, HighC to name a few. However, all of these platforms struck me as very two dimensional and isolated from any kind of current modelling workflow. Therefore, as a long time Grasshopper enthusiast, I decided to write a simulation package that uses Grasshopper as the basis for the geometry creation.

On the Grasshoper side of things, you model whatever you want, and then generate a Data Tree of points to describe the geometry:

 

This then gets streamed to the Simulator:

I then used a Unity implementation of the C# Synth Project to provide most of the heavy lifting for MIDI playback and sound creation. While both these packages are great, neither of them fully fit my needs, and I ended up having to write some custom Soundfont (SFZ) import code as well an audio channel management system (since there can be a large number of voices happening at the same time). All this was pretty rushed and it is still very buggy, but the live demo went OK for the conference. I’d be happy to share the code with anyone who is interested.

 

3 Responses

  1. ayuna
    | Reply

    Dear Daniel!

    I am very interested in your project and implementation of Xenakis work, currently I am doing research on my own between music and architecture.

    Unfortunately currently link is not available anymore.

    Is it possible to see the zip file?

    • danhambleton
      | Reply

      Hi there,

      If you send me your email (you can use the contact page), I can send the source code over. It’s built with Unity, so you’ll need at least the free version of that. Also, the code is only a prototype, so it might be a bit difficult to deal with. However, if you’re still interested, I’d be happy to share it.

      Daniel

  2. Josep
    | Reply

    Hi Daniel!

    I have seen you work and it’s really interesting. I’m doing a research on my final degree project about music, acoustics and architecture and your work would help me a lot. Is it possisble to have the zip file with the code?

    Thanks.

Leave a Reply