The Living Thing / Notebooks :

Arpeggiate by numbers

Workaday automatic composition and sequencing

Colin Morris’ SongSim visualising lyrics (Colin Morris’ SongSim visualises lyrics, in fact, not notes, but wow don’t they look handsome?)

Where my audio software frameworks page does more DSP, this is mostly about MIDI—choosing notes, not timbres. A cousin of generative art with machine learning, with less AI and more UX.

Sometime you don’t want to measure a chord, or see a chord, you just want to write a chord.

See also machine listening, musical corpora, musical metrics, synchronisation. The discrete, symbolic cousin to analysis/resynthesis.

Related projects: How I would do generative art with neural networks and learning gamelan.

To understand

Dmitri Tymozcko claims, music data is most naturally regarded as existing on an orbifold (“quotient manifold”), which I’m sure you could do some clever regression upon, but I can’t yet see how. Orbifolds are, AFAICT, something like what you get when you have a bag of regressors instead of a tuple, and evoke the string bag models of the natural language information retrieval people, except there is not as much hustle for music as there is for NLP. Nonetheless manifold regression is a thing, and regression on manifolds is also a thing, so there is surely some stuff to be done there. Various complications arise; For example: it’s not a single scalar (which note) we are predicting at each time step, but some kind of joint distribution over several notes and their articulations. Or it is even sane to do this one step at a time? Lengthy melodic figures and motifs dominate in real compositions; how do you represent those tractably?

Further, it’s the joint distribution of the evolution of the harmonics and the noise and all that other timbral content that our ear can resolve, not just the symbolic melody. And we know from psycho-acoustics that these will be coupled— dissonance of two tones depends on frequency and amplitude of the spectral components of each, to name one commonly-postulated factor.

In any case, these wrinkles aside, if I could predict the conditional distribution of the sequence in a way that produced recognisably musical sound, then simulate from it, I would be happy for a variety of reasons. So I guess if I cracked this problem in the apparently direct way it might be by “nonparametric vector regression on an orbifold”, but with possibly heroic computation-wrangling en route.

Composition assistants


⭐⭐⭐⭐ (EUR12 + EUR15)

J74 progressive and J74 bassline by Fabrizio Poce’s apps are chord progression generators built with Ableton Live’s scripting engine, so if you are using Ableton they might be handy. I was using them myself, although I quit Ableton for bitwig, and although I enjoyed them I also don’t miss them. They did make Ableton crash on occasion, so not really suited for live performance, which is a pity because that would be a wonderful unique selling point. The real-time-oriented J74 HarmoTools from the same guy are less sophisticated but worth trying, especially since they are free, and he has lot of other clever hacks there too. Just go to this guy’s site and try his stuff out.


⭐⭐⭐⭐ Free

Helio in action
Helio in action

Helio is free and cross platform and totally worth a shot. There is a chord model in there and version control (!) but you might not notice the chord thing if you aren’t careful, because the UI is idiosyncratic. Great for left-field inspiration, if not a universal composition tool.


Free, open source. ⭐⭐⭐⭐

orca in action
orca in action

Orca is a bespoke, opinionated weird grid-based programmable sequencer. It doesn’t aspire to solve every composition problem, but it does guarantee weird, individual, quirky algorithmic mayhem. It’s made by two people who live on a boat.


⭐⭐ (USD49)

odesi in action
odesi in action

Odesi has been doing lots of advertising of their poptastic interface to generate pop music. It’s like Synfire-lite, with a library of top-40 melody tricks and rhythms. The desktop version tries to install gigabytes of synths of meagre merit on your machine, which is a giant waste of space an time if you are using a computer which already has synths on, which you are because this is not the 90s, and in any case you presumably have this app because you are already a music producer and therefore have synths. However, unlike 90s apps, it requires you to be online, which is dissatisfying if you like to be offline in your studio so you can get shit done without distractions. So aggressive is it in its desire to be online, that any momentary interruption in your internet connection causes the interface to hang for 30 seconds, presenting you with a reassurance that none of your work it lost. Then it reloads, with some of your work nonetheless lost. A good idea foiled by intrusively irritating execution, but you might find the details less irritating if you frame it as an expensive webpage that takes up gigabytes of hard disk.



Intermorphic’s Mixtikl and Noatikl are grandaddy esoteric composer apps, although the creators doubtless put much effort into their groundbreaking user interfaces, I nonetheless have not used them because of the marketing material, which is notable for a inability to explain their app or provide compelling demonstrations or use cases. I get the feeling they had high-art aspirations but have ended up doing ambient noodles in order to sell product. Maybe I’m not being fair. If I find spare cash at some point I will find out.


Ruismaker’s Rozeta (iOs) has a series of apps producing every nifty fashionable sequencer algorithm in recent memory. I don’t have an ipad though, so I will not review them.

Rapid compose

Rapid Compose (USD99/USD249) might make decent software, but can’t really explain why their app is nice or provide a demo version.


EUR996, so I won’t be buying it, but wow, what a demo video.

synfire explains how it uses music theory to do large-scale scoring etc. Get the string section to behave itself or you’ll replace them with MIDIbots.

Harmony Builder

USD39-USD219 depending on heinously complex pricing schemes.

Harmony builder does classical music theory for you. Will pass your conservatorium finals.

Roll your own

You can’t resist rolling your own?


Constraint Composition

All of that too mainstream? Try a weird alternative formalism! How about constraint composition? That is, declarative musical composition by defining constraints on the relations which the notes must satisfy. Sounds fun in the abstract but the practice doesn’t grab me especially as a creative tool.

The reference here is strasheela built on an obscure, unpopular, and apparently discontinued Prolog-like language called “Oz” or “Mozart”, because using popular languages is not a grand a gesture as claiming none of them are quite Turing-complete enough, in the right way, for your special snowflake application. That language is a ghost town, which means headaches if you wish to use it in practice; If you wanted to actually do this, you’d probably use overtone + minikanren (prolog-for-lisp), as with the composing schemer, or to be even more mainstream, just use a conventional constraint solver in a popular language. I am fond of python and ncvx, but there are many choices.

Anyway, prolog fans can read on: see Anders and Miranda (AnMi10, AnMi11).

Random ideas