Continuing the Journey: Learning to Build Audio Plugins for DAWs (Part 2)

DJ AmadeusDJ Amadeus
3 min read

Continuing the Journey: Learning to Build Audio Plugins for DAWs (Part 2)

In my first blog post, I shared the beginnings of my journey into creating plugins for digital audio workstations (DAWs). Since then, I’ve been balancing my time between learning the fundamentals of software engineering in school and exploring plugin development on my own. Progress has been slow but steady, and I’ve started gaining a better understanding of the tools and workflows involved.

Here’s what I’ve learned so far since my last post.

Exploring JUCE 8 and Development Tools

One of the tools I mentioned in my first blog post was JUCE, a framework for creating audio plugins. Since then, I’ve started digging deeper into how it works, and I’ve discovered that JUCE 8, especially when paired with Xcode, is a great starting point for plugin development. The setup process is relatively straightforward, which allows me to focus more on coding and less on configuring.

On the other hand, using CMake with JUCE is a more involved process. While the setup takes longer, it offers greater flexibility for working across different platforms and development environments, such as Visual Studio (Windows) and Linux Makefile. This versatility could be useful down the line, but for now, Xcode is my tool of choice because it feels faster and more intuitive for beginners like me.

Debugging with Xcode

One of the most exciting discoveries so far is Xcode’s debugging feature. I’ve learned that I can use it to test my plugin directly within my DAW. If there’s an issue, Xcode will pinpoint the exact line of code causing the problem, allowing me to troubleshoot quickly. For someone new to coding, this is an incredibly useful feature that I know will save me countless hours of frustration.

Getting Comfortable with the Development Environment

When I first opened the coding environment in JUCE 8, I’ll admit it felt overwhelming. But as I’ve explored further, I’ve started to understand where certain pieces of code need to go. For example, I’m learning how to save the plugin’s state so users can pick up where they left off, as well as how to write code that runs before any audio playback begins. These are small steps, but they’re helping me feel more confident in navigating this unfamiliar landscape.

Reflections and Next Steps

While I haven’t been able to dive deeply into plugin creation yet due to my focus on foundational programming skills, I’m gaining a clearer picture of what’s ahead. I’m slowly connecting the dots between the tools, workflows, and techniques I’ll need to create my first plugin.

As I continue to balance my schoolwork with self-directed learning, I’m excited to see how much progress I can make in the coming weeks. I’m looking forward to learning more about coding practices, audio processing, and the technical aspects of plugin development.

Stay tuned for Part 3, where I’ll share even more insights from this journey.

0
Subscribe to my newsletter

Read articles from DJ Amadeus directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

DJ Amadeus
DJ Amadeus