Open for Enrollment

You can also start immediately after joining!
Join Now
Go at your own pace
4 Sessions / 10 hours of work per session
Price
Premium membership $20/month (Preview session 1 free)
Included w/ premium membership ($20/month)
Skill Level
Intermediate
Video Transcripts
English
Topics
Audio Plugins, JUCE Framework, Audio Plugin Architecture, GUI & DSP Programming

Not available for purchase in India

Open for Enrollment

Intro to Audio Plugin Development

Open for Enrollment
You can also start immediately after joining!

Would you like to enroll?

Enrollment for this course has closed. But you can enroll in a future offering (please select)

Enrollment has closed

Go at your own pace
4 Sessions / 10 hours of work per session
Price
Premium membership $20/month (Preview session 1 free)
Included w/ premium membership ($20/month)
Skill Level
Intermediate
Video Transcripts
English
Topics
Audio Plugins, JUCE Framework, Audio Plugin Architecture, GUI & DSP Programming

Not available for purchase in India

Course Description

Electronic musician and Output audio developer Jacob Penn teaches the first course of our two-part program Creating Audio Plugins with C++ and JUCE. Using the de facto language and framework of the industry, you will learn how to design, architect, and develop multi-threaded audio plugins in industry-standard formats like VST and AudioUnit. After taking this course, you will have a firm understanding of what really goes into developing software audio plugins, including how they work from a structural perspective, and the thought and design processes that go into the creation of commercial products.




What students are saying:


" Thanks so much for creating this course! It is one-of-a-kind and super helpful for those getting started with the JUCE framework and developing audio plugins. As a DSP Engineer with hopes of breaking into the plugin industry, being able to engage at this educational level with a company like Output is very valuable to me. "



Reviews
schedule

This course is in adaptive mode and is open for enrollment. Learn more about adaptive courses here.

Session 1: Introduction to Audio Plugins & JUCE (December 3, 2024)
This session introduces concepts related to digital audio, JUCE, and audio plugin architecture.
7 lessons
1. Meet Jake and Bruce
2. Behind the Code: Pain Points & Questions
3. Program Overview: Fundamental Concepts
4. Technical Introduction
5. Digital Audio Theory (Premium Exclusive)
6. Intro to JUCE
7. Plugin Architecture (Premium Exclusive)
Session 2: Parameters, Components & Listeners (December 10, 2024)
This session introduces plugin parameters, components, listeners, and control methods.
8 lessons
1. Create Your First Audio Plugin (Premium Exclusive)
2. PluginProcessor (Premium Exclusive)
3. ProcessBlock (Premium Exclusive)
4. ProcessBlock Gain (Premium Exclusive)
5. Parameter Smoothing (Premium Exclusive)
6. Adding a UI (Premium Exclusive)
7. Listener Pattern (Premium Exclusive)
8. Listener Pattern Alternative (Premium Exclusive)
Session 3: Delays, Circular Buffers & Interpolation (December 17, 2024)
This session introduces digital delay lines, parameter smoothing, and inter sample interpolation.
8 lessons
1. Digital Delay & DSP Blocks (Premium Exclusive)
2. Circular Buffers (Premium Exclusive)
3. Reading the Data (Premium Exclusive)
4. Adding Feedback (Premium Exclusive)
5. Adding UI Part 1: Dry/Wet Control (Premium Exclusive)
6. Adding UI Part 2: Feedback Control (Premium Exclusive)
7. Adding Interpolation (Premium Exclusive)
8. Adding a Smooth Read (Premium Exclusive)
Session 4: Chorus, Modulators & Statefulness (December 24, 2024)
This session introduces oscillators, modulators, and application statefulness.
10 lessons
1. Expanding Our System (Premium Exclusive)
2. Refactor (Premium Exclusive)
3. Adding an LFO - Part 1 (Premium Exclusive)
4. Adding an LFO - Part 2 (Premium Exclusive)
5. Adding Depth (Premium Exclusive)
6. Adding Phase Offset (Breaking the Code) (Premium Exclusive)
7. Adding Phase Offset (Repairing the Code) (Premium Exclusive)
8. Saving/Loading State Part 1 (Premium Exclusive)
9. Wrapping Up the Code (Premium Exclusive)
10. Course Recap (Premium Exclusive)
Learning Outcomes

Below you will find an overview of the Learning Outcomes you will achieve as you complete this course.

Instructors And Guests
What You Need to Take This Course

Prior Knowledge:

C++, Music DAWs & Plugins

Materials:

JUCE Code Library

Equipment:

Semi-modern computer

Software:

Integrated Development Environment (IDE) like Xcode, Visual Studio, or CodeBlocks

Additional Information

If a student signs up for the Creating Audio Plugins With C++ program, it is recommended that these courses are taken sequentially.

Peer Assessment Code of Conduct: Part of what makes Kadenze a great place to learn is our community of students. While you are completing your Peer Assessments, we ask that you help us maintain the quality of our community. Please:

  • Be Polite. Show your fellow students courtesy. No one wants to feel attacked—ever. For this reason, insults, condescension, or abuse will not be tolerated.
  • Show Respect. Kadenze is a global community. Our students are from many different cultures and backgrounds. Please be patient, kind, and open-minded when discussing topics such as race, religion, gender, sexual orientation, or other potentially controversial subjects.
  • Post Appropriate Content. We believe that expression is a human right, and we would never censor our students. With that in mind, please be sensitive of what you post in a Peer Assessment. Only post content where and when it is appropriate to do so.

Please understand that posts that violate this Code of Conduct harm our community and may be deleted or made invisible to other students by course moderators. Students who repeatedly break these rules may be removed from the course and/or may lose access to Kadenze.

Students with Disabilities: Students who have documented disabilities and who want to request accommodations should refer to the student help article via the Kadenze support center. Kadenze is committed to making sure that our site is accessible to everyone. Configure your accessibility settings in your Kadenze Account Settings.