fbpx

Audio Programming Languages

I wanted to learn how to program audio plugins so I started a blog series chronicling my audio programming journey. I thought it would be handy to make a resources pages as I go. I plan to keep it updated with stuff I find along the way. If you have any suggestions please feel free to leave them in the comments section and I will add them at a later date. Meanwhile…  Fill yer boots:

Audio Programming Languages

ABC notation

A language for notating music using the ASCII character set

ChucK

ChucK is an audio programming language for real-time sound synthesis and music creation. It is open-source and freely available on MacOS X, Windows, and Linux

Extempore

A live-coding environment for composers, sound artists, VJ’s and graphic artists with an interest in live or interactive programming. It borrows a core foundation from the Impromptu environment.

FAUST

Functional Audio Stream, a functional compiled language for efficient real-time audio signal processing

Hierarchical Music Specification Language (HMSL)

Optimized more for music than synthesis, developed in the 1980s in Forth

Impromptu

A live-coding environment for composers, sound artists, VJ’s and graphic artists with an interest in live or interactive programming.

jMusic

Designed to provide composers and software developers with a library of compositional and audio processing tools. It provides a solid framework for computer-assisted composition in Java™, and is also used for generative music, instrument building, interactive performance, and music analysis.

JUCE

[The Projucer] With support for PC, Mac and Linux, build powerful and complex applications. JUCE also supports the development of plug-ins: VST, AU and AAX.

JSyn

Allows you to develop interactive computer music programs in Java. It can be used to generate sound effects, audio environments, or music.

JMSL

Java API for music composition, interactive performance, and intelligent instrument design.

Kyma (sound design language) –

A hardware and software environment for creative sound design, live performance, and scientific exploration.

Max/MSP

Max is a visual programming language for the specialized needs of artists, educators, and researchers working with audio, visual media, and physical computing. It’s commercial so you’ll have to pay for it. Also available as Max for Live for Ableton. Decent community and forums.

Music Macro Language (MML)

I am aware of MML but as yet not too familiar with it. I believe it surfaced in Microsoft BASIC back in the early 1980s. I only have a list here from a wiki which documents MML languages.

Music21

An algorithmic programming composition tool based in python, allowing integration of machine learning for advanced musicology and algorithmic composition. Looks to be used for databasing music too.

MUSIC-N

A collection of computer music software, includes versions I, II, III, IV, IV-B, IV-BF, V, 11, and 360. Other family members of this software are:

  • Real-time Cmix
    A real-time software “language” for doing digital sound synthesis and signal-processing. It is written in C/C++, and is distributed open-source, free of charge.
  • Common Lisp Music (CLM)
    A music synthesis and signal processing package in the Music V family
  • Csound
    A MUSIC-N synthesis language released under the Lesser General Public License (LGPL) with many available unit generators. Csound is a sound and music computing system which was originally developed by Barry Vercoe in 1985 at MIT.

Nyquist

Nyquist is a programming language for sound synthesis and analysis based on the Lisp programming language. It is an extension of the XLISP dialect of Lisp. Written by the co-founder of Audacity. WIKI HERE

OpenMusic

OpenMusic (OM) is a visual programming language based on Lisp

Open Sound Control (OSC)  

Open Sound Control (OSC) is a protocol for communication among computers, sound synthesizers, and other multimedia devices.

Pure Data (Pd)

Open source visual programming language for multimedia. It’s a major branch of the family of patcher programming languages known as Max.

Reaktor

Native Instruments synth that allows you to get under the hood and build your own synths, effects, and sound design tools. It has two structural levels fro building – Core and Primary.

Sonic Pi

Live Coding Music Synth

Structured Audio Orchestra Language (SAOL),

MUSIC-N programming language designed for describing virtual instruments, processing digital audio, and applying sound effects. It was published as subpart 5 of MPEG-4 Part 3

SuperCollider

Platform for audio synthesis and algorithmic composition, used by musicians, artists, and researchers working with sound. It is free and open source software available for Windows, macOS, and Linux.

SynthEdit

You can build real Synths and Effects with hundreds of interacting components. Several commercial companies use SynthEdit as their primary development environment.

Leave a Comment

Your email address will not be published. Required fields are marked *