This is a quick post about a current book I am reading, and the awesome software that the author wrote to help students understand audio DSP theory as well as learn how to create audio plug-ins using this theory. The book called Designing Audio Effect Plug-ins in C++ written by Will Prikle. If you have ever wanted to learn how to create audio effect plug-ins that can be used in your DAW’s then this is the book for you. I’m currently about four of five chapters in and have already written small audio effects. You write a gain controller plug-in in the first couple of chapters. For those audio nerds out there you actually write two volume controllers fairly early in this book. One linear volume controller, which we know doesn’t really follow true audio plug-in controls, and secondly the dB volume controller that we all know and love. Right now I am currently reading through the theory heavy section of the book, and trying to soak it all in, but I think I am going to move on to the audio filter design IIR chapter and continue to come back to the theory chapter to grasp concepts better as I use them. I highly recommend this book and will definitely be picking up Will’s other book on Designing Software Synthesizer Plug-Ins in C++ after I finish his current book.
Along with his incredible book, he wrote even better software, pictured above, to help facilitate students in learning how to create audio effect plug-ins. Will’s software takes out the GUI implementation and update tracking code and gives you a clean user interface to prototype the plug-ins from his book, as well as experiment with your own plug-in creation when you feel confident. You can use his simple GUI implementation and just focus on grasping the DSP theory and how it is implemented in code. Or if you want you can design your own GUI. One other cool feature of his software is that all plug-ins can be ported to VST, AU and even the newer AAX format can all be created from his great software. I’ll write some more quick posts about Will’s software once I get a little better handle on it and create something cool. For now back to reading the book and learning the ins and outs of building audio effects in C++.