Talks
Events

Developing Music Systems on the JVM with Pink and Score

Steven Yi at Clojure/conj 2014

Pink and Score are two libraries for music systems development, written in Clojure and targeting the Java Virtual Machine. Pink is a low-level library for audio signal generation and processing, event handling, and audio engine design. It comes with a number of pre-built features that allow users to get started quickly, but it is also designed so they can easily reuse parts to create their own music systems.

Score is a higher-level library for modeling music and generating musical events. It is designed to be agnostic to the target system that will be used to perform the musical data. Users can learn to express their musical ideas in Clojure and Score, and move their musical ideas between various systems. The library is designed to use standard Clojure abstractions so as to maximize interoperability and reuse with other Clojure libraries.

In this talk, I will discuss music systems designs in existing systems (i.e. Overtone, Csound, Common Music), and the motivations for creating Pink and Score. I will give demonstrations using both libraries separately, then explore the interesting possibilities that emerge when the two are used together. Finally, I will present lessons learned while building these libraries and discuss their future directions.

Steven Yi is a composer and programmer. He is the author of the Blue Integrated Music Environment (http://blue.kunstmusik.com) and a core developer of Csound (http://csound.github.io). He is currently working on a PhD in Digital Arts and Humanities at the National University of Ireland, Maynooth; he expects to finish his degree in Summer 2015. In his free time, he enjoys practicing and studying T'ai Chi.