Skip to main content

A curated list of my favourite music DSP and audio programming resources

2.9k
GitHub Stars
120
Curated Resources
18
Categories
6 hours ago
Last Refreshed
New - Agentic AI coding tools for audio programmersAudio Plug-in/App FrameworksAudio plug-in templatesUI FrameworksDSP LibrariesMusic Information Retrieval Libraries (C/C++)Domain Specific Languages (DSLs)Filter designReadingToolsExemplary open source audio plug-in projectsMiscellaneous open source audio code/projectsMachine LearningPlug-in gui stuffHardware/embeddedYoutubers/PodcastersInteresting TalksPlaces

Use this list with your AI agent

Add the Context Awesome MCP server to Claude, Cursor, or any MCP client, then ask:

"Show me miscellaneous open source audio code/projects resources from awesome-musicdsp"

Installation instructions →

What's inside

Miscellaneous open source audio code/projects

  • AirWindows Plugins

    A large collection of GUI-less plug-ins open source but supported via patreon

  • AudioKit SynthOne

    SynthOne is a great open source project built using Audiokit, that will be very interesting to anyone looking to build an iOS synthesiser.

  • BespokeSynth

    A pretty amazing modular synth/composition environment with nice real-time visualisation, loads of modules, and lots of flexibility

  • Blink's Web Audio API

    The same thing in Blink (Google chromium).

  • choc

    From the creator of JUCE comes CHOC, an ISC licensed library of Classy Header-Only Classes. Including some useful audio related utilities

  • csound

    CSound is still going strong after many years. It can also be used as an embeddable DSP library. There is a

Audio Plug-in/App Frameworks

  • ASPiK

    This is a framework from

  • AudioKit

    AudioKit uses the Swift programming language. It's a high level DSP and UI toolkit for audio things. If you want to make apps for Apple's devices this is a great option, although if you want to do more low level, custom DSP, you will still have to do some C/C++.

  • CPLUG

    A smart new plug-in abstraction in C that targets VST3, AUv2, CLAP and Standalone formats on desktop. It's very new but a nice clean and minimal way to target multiple formats producing tiny binaries. Also includes hot reloading capabilities for the standalone targets.

  • DPF

    Distrho Plug-in Framework is a nice C++ plug-in framework by falkTX, supporting lots of Linux formats.

  • DPlug

    A plug-in framework using the D programming language, that has had a huge amount of work over many years. I haven't tried it, but I've decided to include it here in solidarity with the authors. As a fellow open-source framework developer, it's nice if people know about your work.

  • iPlug2

    Originally created by Cockos, iPlug is an awesome plug-in framework. For a long time, I was maintaining a

Music Information Retrieval Libraries (C/C++)

  • audioflux

    AudioFlux is a new-kid-on the block and some what similar but looks designed for deep learning, it looks very promising and has a liberal (MIT) license.

  • essentia

    Essentia is a huge collection of MIR algorithms that you can use to extract high and low level features from audio. AGPL3 license. Somewhat painful to build cross-platform.

  • librosa.cpp

    Librosa is a widely used Python library for MIR tasks. With a little help from my agents, i've systematically ported it to a C++ library with WASM and Swift Package to boot.

New - Agentic AI coding tools for audio programmers

Tools

  • Audio Programming Environment - APE

    An audio plug-in that embeds a C++ JIT compiler which you can use to test your C++ DSP without leaving the DAW.

  • Claude code

    It's 2026 and it's the year of Agentic AI. I like using these tools on the command line, have you heard, i'm building

  • Coliru

    This is an online interactive C++ compiler, which can be a very nice and quick way to test out a particular feature of the language, without having to build a binary.

  • Compiler Explorer

    Compiler explorer is a great tool for checking the assembly code that different compilers will produce.

  • Cycling '74 Max

    Max is a great environment to use for prototyping audio plug-ins. There are just so many options for integrating different technologies, I highly recommend it - even if nowadays most of the max patches I make only include a few objects.

  • Desmos

    This is an awesome online graphing calculator. Check out some interactive Casio CZ waveforms that I made

Hardware/embedded

  • bela

    Bela is a wonderful little SoC + Audio Interface which is pretty revolutionary, allowing super low latency audio and sensor I/O all clocked together, in a tiny package. I wrote the FAUST support class for bela. You can also program it with C++ or libpd, and even supercollider.

  • Daisy

    Daisy is a brilliant programmable embedded music platform. A few different host devices are available into which you plug the

  • ELK Audio OS

    An embedded linux OS & dev kit that runs VST2 & VST3 plugins with super low latency.

  • mutable instruments

    Emilie Gillet's work is inspirational. The code has been

  • pedalvite

    An open source pedal board project from a developer who did a lot of the DSP in the best plugins of the last ~20 years.

  • the owl pedal/module

    This is a programmable stomp box and eurorack module that I've been working with since the kick starter campaign to launch it. It's a really nice little unit, which you can program in C++, FAUST, Pd or with Max gen~. I find the limited interface with 4 controls makes me think quite carefully about what's important about my DSP algorithm. You can find some patches I made for it (using a mixture of c++ and FAUST) in the

Audio plug-in templates

Domain Specific Languages (DSLs)

  • Cmajor

    Is an exciting new DSL created by Jules Storer and Cesare Ferrari, which also uses the LLVM compiler technology. It has a JIT compiler for a fast workflow and can spit out C++ and WASM and ready-to-go JUCE projects. Cmajor is an imperative language much more similar to C/C++/Javascript than FAUST. It has several advantages, for example multi-rate processing and in my opinion it is more suited for code that mixes event-handling with DSP, where as FAUST is good for discreet blocks of DSP processing. Since FAUST can output Cmajor code via faust2cmajor, you can use them together.

  • FAUST

    FAUST is a powerful functional DSL for audio DSP with many options for quickly compiling to different “architectures” including audio plug-ins and embedded devices. FAUST is not interpreted like programming languages such as Puredata/Max/Supercollider/javascript, it is

Showing a sample of 120 resources. View the full list on GitHub →