Getting started with audio programming

user67000 picture user67000 · Feb 16, 2009 · Viewed 12.8k times · Source

I'm looking to build some compression interfaces for windows audio, and I was wondering if anybody might know of some tips/tricks? I'd like to build my own software equalizer that will function with the whole windows audio system, not just a particular program. I know this can be done - my sound card has one built in, but doesn't have enough channels for my tastes.

I'm completely new to audio programming, but I'd really like to break into it and get my hands dirty. If you can think of any tutorials/references/articles/bits of advice, I'd love to hear them!

I'm using Visual Studio C++ 2008.

Answer

Nik Reiman picture Nik Reiman · Feb 16, 2009

If you're looking to get your hands dirty with DSP stuff, I'd suggest starting with VST programming. Writing a plugin is a nice way to mess around with realtime audio manipulation without having to worry about connecting to system hardware, drivers, and so on. Basically, the sequencer takes care of all of that for you, and your plugin just receives a buffer with floating point data which you can manipulate directly.

This is, on the whole, a lot easier than trying to write a plugin to manipulate data going through the system audio streams. Also, the Windows audio API has changed significantly since Vista, and depending on which version of Windows you're using, you will have to follow different conventions to get your stuff working.

But again -- start simple. Get the VST SDK, check out some tutorials, and start with baby steps. :)