I’m sure that I’ll need to learn some type of programming language but I don’t know which one is used to make plugins. Honestly, I don’t have any idea where to start with this. The whole concept of creating a plugin seems pretty overwhelming to me but I definitely want to learn.
The programming language that you’ll want to become familiar with is called C++, which is an object-oriented programming language. I recommend taking a course like Beginning C++ Programming - From Beginner to Beyond to get started. Following along with a project-based video course is one of the best ways to learn a new programming language.
One of the issues with learning how to make plugins is that lots of the tutorials that teach you how to make plugins on YouTube assume that you’re already familiar with C++. For that reason, it makes sense to dive into C++ first and then apply that knowledge to creating plugins afterward.
Many developers use a framework like JUCE to build plugins. It allows you to compile VST, VST3, RTAS, AU, and AAX plugins, as well as create slick user interfaces. Output created a course that teaches plugin development using JUCE that’s worth checking out. Again, you’ll have an easier time following along if you’ve taken a C++ course first.
Once you’ve worked your way through the recommended courses, there are a handful of popular textbooks that can help take your understanding of plugin development to the next level:
- Designing Audio Effect Plugins in C++
- Designing Software Synthesizer Plugins in C++
- A Digital Signal Processing Primer: with Applications to Digital Audio and Computer Music (Read this one last)
It’s going to take you quite a while to work your way through all of this content. Although, you’ll definitely know how to make audio plugins once you’re finished!