Learn how to Program Audio: No.1 Digital Analogue Conversion

Starting the journey of audio programming with Youtube, JUCE and MaxMSP.

I’ve been following “The Audio Programmer” on Youtube for a while, he has a video series which lays out an introduction to programming your own VST. I thought it’d be a nice introduction to audio programming and maybe a little easier to learn if I can code alongside him? 

Foundations of Audio Programming

I’ve got a few books on Audio Programming that structure audio theory, digital signal processing and programming nicely, sometimes in great depth! This depth of knowledge can make it a little unclear which topics are “foundational” or essential for the beginner. Luckily I have a sound engineering background so basic audio theory is familiar to me, programming is not. In an attempt to get going I started with the first video of “The Audio Programmer’s” beginner series.  

He breaks down the 20 minute lesson into:

  • Sample Rate 
  • Bit Depth
  • Sample & Hold
  • Quantization
  • Nyquist Theorem 

I found his explanations straightforward and i’m sure would be of use to any beginner of audio theory. Using Ableton & his handy drawing board Josh breaks down how we transform sound into numbers via analogue to digital conversion . Perhaps further explanation of bit depth and quantization maybe of use to some? There’s a section called “Signals” in the book “Designing Sound” [Ch 7.1, p119-124] which goes into more depth, or a simpler explanation at BBC Bitsize’s computer science GCSE revision website.

What is a sound?

This was a passing phrase in the video, but I like this question. I think it’s an interesting approach to see sound like an object, to then break it down into its constituent parts, maybe it’s my sound design background? If you are going to be creating a sound, the more knowledge you have of what object’s parts the abler you are to reverse engineer it. This one question really shows the point of learning the processes in elementary physics that combine to synthesize sound.

Nyquist Theorem & Aliasing

The second video concentrates the tutorial specifically on Nyquist Theorem & Aliasing. It’s a shorter video that use audio examples to explain the Nyquist Theorem (sometimes called Nyquist point). Nyquist Theory relates to the sampling rate, it’s the maximum frequency that can be represented by the set sample rate. The maximum frequency can be found by sampling rate/2.

Now it’s onto the next video for me!