Nebula Nodal patch by Jon McCormack

Nodal is a new way to create generative music. It uses a novel, graph-based method to compose and play a composition.

How does it work?
This method is based around the concept of a user-defined graph. The graph consists of nodes (musical events) and edges (connections between events). You interactively define the graph, which is then traversed by any number of voices. These voices play the musical events as they encounter them on the graph. The time taken to travel from one node to another is based on the length of the edges that connect the nodes. Nodal allows you to create complex, changing sequences using just a few simple elements. Its unique visual representation shows a structural representation for generative systems that you can edit and interact with in real-time as the composition plays.

This page contains some background history and future development information. To download Nodal see the Nodal web site. Mac users can also purchase Nodal from the Apple Mac App Store.

The idea for Nodal came one day in 2004 when I was in Portugal, listening to a paper presentation by Paul Nemirovsky and Rebecca Luger-Guillaume at the EvoMusArt workshop. They described an experimental “emotic environment” for real time improvisation. Their system used a complex set of perceptual and structural networks. While what they were attempting to do was very different than what Nodal does, the idea of using a network to specify events lead me (in an almost ‘eureka! moment’) to come up with the idea of a network where distance between events equated to inter-onset time…I quickly scribbled the idea down on paper.

The basic idea for Nodal sketched out in 2004

We were fortunate to receive a small Arts/IT grant from Monash University to develop the idea in 2005, under the title of “nGen” (after we found this name had been taken by some unrelated software, the name was changed to Nodal). The design team consisted of myself, Peter McIlwain and Alan Dorin, with newly recruited honours student Aidan Lane handling the software development. Additional funding was provided in 2006.

Version 1.0 was released in 2006 with some updates in 2007. While this early version lacked many features users expect in modern software – such as cut, copy, paste and undo – it did illustrate that the concept worked and could inspire new ways to compose music. It was fantastic to see what music students could do with the software – such as programming a Mozart sonata – after only a few days of working with Nodal.

Version 1 remained a free download and was popular with musicians. However, there were a number of features that we thought were missing and could much improve Nodal as a professional generative music application.

In 2009 we were lucky to receive commercialisation funding to continue Nodal’s development. Version 1.5, released November 2009, was the first commercial release of the program and included a long list of much needed features. Subsequent updates have included the ability to sync with midi, remote triggering, continuous controllers and keyboard triggering of individual voices.

In 2012, Nodal was awarded a Eureka Prize for Innovation in Computer Science.

More Nodal tutorial videos.

Nodal screen shot (detail)

Current Release

The most recent release, Version 1.9 was developed with the help of Audiomulch developer, Ross Bencina.  This version allows you to define sets of notes and registers that allow an expanded form of “key signature”, so that when you use the relative increments and decrements in a pitch list you can generate sequences that are more musically meaningful in a particular key or pitch class.

We have also expanded the syntax in pitch, velocity and timing lists to allow polyphony, more complex ordering of sequences, even the mixing of random and fixed order sequences.

Nodal is still under active development and version 2 should be available in 2017.

Future Plans

We are also looking into the possibility of developing a new version of Nodal for tablet devices, such as the Apple iPad. We’d be keen to know if there is any interest from users in this idea, so post your feedback on the Nodal Google group discussion list.

You can download Nodal from the Nodal web site, there are also links to a number of technical papers that discuss the software and concept in detail.