This repository is made for the purpose of collecting inspirations, libraries and references about interactive music and computer music composition. Feel free to PR if you come across interesting tools, libraries or projects that are not here.
Topic | Title |
---|---|
Csound | Floss Manual |
Csound | Csound Manual |
Csound | A Beginner’s Guide to Csound |
Csound | Inside Csound |
Csound | Csound on embedded systems |
ChucK | Programming for Musicians and Digital Artists: Creating music with ChucK |
SuperCollider | The SuperCollider Book |
Music Information Retrieval + Applications | Fundamentals of Music Processing |
DSP + Applications | A Digital Signal Processing Primer: With Applications to Digital Audio and Computer Music |
Music Synthesis | The Audio Programming Book |
AI + Music Synthesis | [pre-order] Constrained Markov Sequence Generation: Applications to Music and Text (Computational Synthesis and Creative Systems) |
Web Audio | |
---|---|
Tone.js | A framework for creating interactive music in the browser |
Howler.js | Makes working with audio in JavaScript easy and reliable across all platforms |
Pizzicato.js | Pizzicato aims to simplify the way you create and manipulate sounds via the Web Audio API |
Gibberish | Fast, JavaScript DSP library |
lissajous | A tool for programmatic audio performance in the browser using Javascript |
WAAX | Offers a comprehensive framework for web-based music application |
Omnitone | Spatial Audio Rendering on the web |
Tuna | An audio effects library for the Web Audio API |
SoundJS | A Javascript library to make working with audio a breeze |
Audio Engines | |
---|---|
Csound | Csound is a sound and music computing system |
SuperCollider | SuperCollider is a platform for audio synthesis and algorithmic composition |
ChucK | Strongly-timed, Concurrent, and On-the-fly Music Programming Language |
Native | |
---|---|
RTcmix | A real-time software "language" for doing digital sound synthesis and signal-processing |
AudioKit | AudioKit is an audio synthesis, processing, and analysis platform for iOS, macOS, and tvOS |
CoreAutio | Core Audio provides software interfaces for implementing audio features in applications you create for iOS and OS X |
Maximilian | A cross platform audio synthesis and signal processing library written in C++ / ofxMaxim for openFrameworks |
jMusic | Designed to provide composers and software developers with a library of compositional and audio processing tools |
Faust | A functional programming language specifically designed for real-time signal processing and synthesis |
CLAM | C++ Library for Audio and Music |
STK | A set of open source audio signal processing and algorithmic synthesis classes written in the C++ |
Graphical Interfaces | |
---|---|
PureData | Pure Data is an open source visual programming language for multimedia |
Cecilia | Cecilia is an audio signal processing environment aimed at sound designers |
Soundgrain | Soundgrain is a graphical interface where users can draw and edit trajectories to control granular sound synthesis |
Game Engines | |
---|---|
Heavy Unity3D | A dead simple way of making your audio content more interactive |
libPD for Unity3D | libpd (pure data) with unity 4.x |
Csound Unity3D | CsoundUnity is a fully integrated audio middleware for the Unity(3D) game engine based in C#. |
Hardware based | |
---|---|
Zynthian | An Open Platform for Sound Synthesis based on Raspberry Pi |
Owl | Open source, programmable audio platform made for musicians, hackers and programmers alike |
Analysis and Music Information Retrieval | |
---|---|
LibROSA | Python library for audio and music analysis |
Essentia | Essentia is an open-source C++ library for audio analysis and audio-based music information retrieval |
Spear | An application for audio analysis, editing and synthesis |
Clubber.js | Application of music theory in audio reactive visualizations |
The Snail | A very high-precision frequency-domain analyzer that delivers an easy to understand representation of sounds |
pyAudioAnalysis | A Python library covering a wide range of audio analysis tasks |
Pyo | A robust Python module, written in C, for music synthesis and a variety of DSP tasks |
PyMIR | A Python library for common tasks in Music Information Retrieval (MIR) |
Live Coding | |
---|---|
FoxDot | Live Coding Music with Python & SuperCollider |
SonicPi | The Live Coding Music Synth for Everyone |
TidalCycles | A Haskell based language for live coding patterns |