Hector Lee

Audio Programming Series

This post will be the first of a series of post which covers getting started with audio programming. I'll be using this blog to keep track of my research and to share useful resources and knowledge.

Audio programming and DSP is something that I've always wanted to spend more time studying. Specifically creating some interesting audio plug-ins and tools. In this series of posts I'll be using various tools to create audio plug-ins and interesting audio applications.

There are many forms of audio programming that caters to various skill levels. Some commonly used tools/languages include Pure Data, MaxMSP, SuperCollider, Web Audio, JUCE, etc. Audio programming is useful for making new music tools such as audio plug-ins and apps, audio for games, and even music composition.

I've spent most of my time working in environments such as Pure Data, ChucK, SuperCollider. These environments are commonly used in the computer music scene for the creation of music, and sonic art installations. These environments are great for getting started in understanding DSP and getting started in audio programming. However, these tools aren't capable of exporting audio plug-ins such as VST or Audio units. I haven't been a fan of the bulky library exported with the standalone application exporter of MaxMSP.

Right now I'll be looking into working with JUCE to study a lower level of audio programming in C++. JUCE is a framework that is commonly used for creating audio applications that is cross platform. This would allow me to write one set of code and export it as various plug-in formats and operating systems. I look forward to writing my next post on DSP and audio programming.