Livecoding

Programmable Music Tools #

Before getting into this list, I also want to point out that there’s an endless number of programmable music sequencing tools which can be found built into VST plugins, larger audio software, and even video games. I’m particularly fond of the huge number of interesting sequencers for VCV Rack, such as Quad Algorithmic Rhythm Generator, Entropia, Fate, Marbles, and Orca’s Heart - just to name a few.

This list absolutely can not have everything. Still, I’ve tried to highlight some of the more novel ideas.

It’s also worth mentioning, there are very interesting hardware tools such as the monome norns, and Toroso T-1

Finally, if you’re into VJ work, you may want to check out The big list of generative art tools in the Design section of this website. If you’re looking for hardware for this role, you may want to check out the hypno by Sleepy Circuits or the Critter & Guitari Eyesy.


Sonic Pi is a code-based music creation and performance tool.



A minimal logic gates playground, written in ANSI C. Made by the same developers as ORCΑ

Chuck is a programming language for real-time sound synthesis and music creation. It is open-source and freely available on MacOS X, Windows, and Linux. Chuck presents a unique time-based, a concurrent programming model that’s precise and expressive (we call this strongly-timed), dynamic control rates, and the ability to add and modify code on-the-fly. In addition, ChucK supports MIDI, OpenSoundControl, HID device, and multi-channel audio.


Mutateful Requires Ableton Live

enables live coding in Ableton Live’s session view. Set up transformations that trigger whenever a source clip is changed, including arpeggiation, shuffling, and ratcheting/retriggering.

mutateful

Pure-Data, Purr Data (a better fork), and Max (the one everyone uses in Ableton)

Max is much friendly and more useful than Pure Data, though it’s also not FOSS.

Both are visual programming environments which are are rather low level (much lower level than VCV Rack, for example) and so are less useful in a live context; however, they’re extraordinarily powerful for making your own instruments which you can play live.

The reason I’ve grouped them together is because both Max and PD share the original author, Miller Puckette; however, it’s very clear that PD has more or less stagnated while Max has grown

MaxDemo

This gif was ripped directly off of https://cycling74.com/products/max


ZeroBrane Studio is a lightweight Lua IDE with code completion, syntax highlighting, live coding, code analyzer, and debugging support for Lua 5.1

Moonlet: Lua live coding. It only works on Linux and Windows.


Live coding music with Algorithmic patterns

Free/open-source software

Tidal Cycles (or ‘Tidal’) for short is free/open source software written in Haskell. Tidal is using SuperCollider, another open-source software, for synthesis and I/O.

Pattern everything

Tidal Cycles allows you to make patterns with code. It includes language for describing flexible (e.g. polyphonic, polyrhythmic, generative) sequences of sounds, notes, parameters, and all kind of information.


Krill is a livecoding environment inspired from TidalCycles
I can’t find a demo! If you make one, let me know and I’ll put it here!

Mosaic, an openFrameworks based Visual Patching Creative-Coding Platform


Collaborative Programmable Music

Overtone is an open source audio environment designed to explore new musical ideas from synthesis and sampling to instrument building, live-coding and collaborative jamming. We combine the powerful SuperCollider audio engine, with Clojure, a state of-the-art lisp, to create an intoxicating interactive sonic experience.

VJ Ready:

Synchronise your visuals and noise with ease. Overtone features seamless integration with both Quil, a Clojure front-end to Processing and ShaderTone, a Clojure version of ShaderToy an OpenGL glsl shader programming environment.


An alternative and fun way to make interactive music in your browser.

tweakable

FoxDot - a Python-based language and editor for making music


Siren, is a tracker interface that embodies abstractions where programming is realized as the medium for pattern sequencing in a modular fashion. It is based on a hierarchical structure that consists of scenes and channels. Separate channels have independent patterns; a complete song consists of a master list of repeated patterns.

Supported programming languages :

  • SuperCollider
  • Haskell/TidalCycles

“Extempore is a programming language and runtime environment designed to support cyberphysical programming


Software Modular Synth

Music Pattern Generator is an app to create musical rhythms. It sends MIDI data, so it won’t make any sounds by itself. For that you need to connect it to MIDI soft- or hardware that can handle MIDI data to produce sound.

Nestup is an experimental markup language for musical rhythms. It’s specifically designed to break away from a fixed musical grid.

The name is a contraction of nested tuplets, which are hard to program on a piano roll but easy to notate with Nestup.

nestup

Audulus is a modular music processing app with unequaled ease of use.

audulus


If you would like to support my development of OpGuides, please consider supporting me on GitHub Sponsors or dropping me some spare change on Venmo @vegadeftwing - every little bit helps ❤️