C++ Programming Tutorial - Build a 3-Band Compressor Audio Plugin (w/ JUCE Framework)

freeCodeCamp.org · Beginner ·🛠️ AI Tools & Apps ·4y ago
In this tutorial you will learn modern C++ by building a 3-Band Compressor with Spectrum Analyzer using the JUCE Framework. ✏️ This course was developed by Matkat Music. Check him out on YouTube and Instagram: 🔗 https://www.youtube.com/matkatmusic 🔗 https://www.instagram.com/matkatmusic 💻 Code: https://github.com/matkatmusic/SimpleMultiBandComp/ 💻 Download the finished plugin: https://www.programmingformusicians.com/simplembcomp/ ⭐️ Course Contents ⭐️ ⌨️ (0:00:00) Intro DSP [3hr 31min] ⌨️ (0:02:29) Part 1 Mac & Windows Setup ⌨️ (0:04:10) Mac set up ⌨️ (0:22:40) Windows set up 2 ⌨️ (0:45:49) Part 2 Anatomy of an Audio Plugin 4 ⌨️ (1:01:05) Part 3 Compressor Theory of Operation ⌨️ (1:12:13) Part 4 Compressor Parameters ⌨️ (1:23:45) Part 5 The First Compressor ⌨️ (1:38:50) Part 6 Creating a CompressorBand ⌨️ (1:44:20) Part 7 DSP Roadmap & Intro to Multiband Filtering ⌨️ (1:53:28) Part 8 Param Namespace ⌨️ (2:04:24) Part 9 Linkwitz-Riley Filters ⌨️ (2:18:13) Part 10 Testing the Filter ⌨️ (2:30:32) Part 11 Filterband Theory ⌨️ (2:35:06) Part 12 3-Band Filtering ⌨️ (2:44:06) Part 13 Inverted Allpass Filters ⌨️ (2:51:27) Part 14 Activating 3 Compressors ⌨️ (3:03:27) Part 15 Implementing Solo/Mute/Bypass ⌨️ (3:13:32) Part 16 Adding I/O Gain & Code Cleanup GUI [4 hr 45 min] ⌨️ (3:30:43) Part 17 GUI Roadmap ⌨️ (3:36:29) Part 18 Placeholder Components ⌨️ (3:42:43) Part 19 Global Controls ⌨️ (4:03:46) Part 20 Rotary Slider With Labels ⌨️ (4:30:30) Part 21 Compressor Band Controls Pt. 1 ⌨️ (4:40:32) Part 22 Compressor Band Controls Pt. 2 ⌨️ (4:54:53) Part 23 Compressor Band Controls Pt. 3 ⌨️ (5:07:51) Part 24 Band Select Functionality Pt. 1 0 ⌨️ (5:25:21) Part 25 Band Select Functionality Pt. 2 ⌨️ (5:34:29) Part 26 Separate Files Refactor ⌨️ (5:49:05) Part 27 Band Select Functionality Pt. 3 ⌨️ (6:07:13) Part 28 Spectrum Analyzer Pt. 1 ⌨️ (6:27:10) Part 29 Spectrum Analyzer Pt. 2 ⌨️ (6:50:35) Part 30 Spectrum Analyzer Pt. 3 ⌨️ (7:22:35) P
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from freeCodeCamp.org · freeCodeCamp.org · 0 of 60

← Previous Next →
1 React: Production Server Setup Part 2 - Live Coding with Jesse
React: Production Server Setup Part 2 - Live Coding with Jesse
freeCodeCamp.org
2 cookies vs localStorage vs sessionStorage - Beau teaches JavaScript
cookies vs localStorage vs sessionStorage - Beau teaches JavaScript
freeCodeCamp.org
3 Browser history tutorial - Beau teaches JavaScript
Browser history tutorial - Beau teaches JavaScript
freeCodeCamp.org
4 Graph Data Structure Intro (inc. adjacency list, adjacency matrix, incidence matrix)
Graph Data Structure Intro (inc. adjacency list, adjacency matrix, incidence matrix)
freeCodeCamp.org
5 React: Parameterized Routing with Next.js - Live Coding with Jesse
React: Parameterized Routing with Next.js - Live Coding with Jesse
freeCodeCamp.org
6 React: Dealing with jQuery Issues - Live Coding with Jesse
React: Dealing with jQuery Issues - Live Coding with Jesse
freeCodeCamp.org
7 setInterval and setTimeout: timing events - Beau teaches JavaScript
setInterval and setTimeout: timing events - Beau teaches JavaScript
freeCodeCamp.org
8 Browser and Device Testing - Live Coding with Jesse
Browser and Device Testing - Live Coding with Jesse
freeCodeCamp.org
9 Last Minute Updates - Live Coding with Jesse
Last Minute Updates - Live Coding with Jesse
freeCodeCamp.org
10 Post Launch Updates - Live Coding with Jesse
Post Launch Updates - Live Coding with Jesse
freeCodeCamp.org
11 React: Setting Up Google Analytics - Live Coding with Jesse
React: Setting Up Google Analytics - Live Coding with Jesse
freeCodeCamp.org
12 React: Masonry Layout - Live Coding with Jesse
React: Masonry Layout - Live Coding with Jesse
freeCodeCamp.org
13 Load Balancing Digital Ocean Droplets - Live Coding with Jesse
Load Balancing Digital Ocean Droplets - Live Coding with Jesse
freeCodeCamp.org
14 try, catch, finally, throw - error handling in JavaScript
try, catch, finally, throw - error handling in JavaScript
freeCodeCamp.org
15 Load Balancing: SSL Passthrough Setup - Live Coding with Jesse
Load Balancing: SSL Passthrough Setup - Live Coding with Jesse
freeCodeCamp.org
16 Graphs: breadth-first search - Beau teaches JavaScript
Graphs: breadth-first search - Beau teaches JavaScript
freeCodeCamp.org
17 React: Masonry Layout Part 2 - Live Coding with Jesse
React: Masonry Layout Part 2 - Live Coding with Jesse
freeCodeCamp.org
18 React: WordPress API Live Search - Live Coding with Jesse
React: WordPress API Live Search - Live Coding with Jesse
freeCodeCamp.org
19 Creating WordPress Custom Post Types - Live Coding With Jesse
Creating WordPress Custom Post Types - Live Coding With Jesse
freeCodeCamp.org
20 Dates - Beau teaches JavaScript
Dates - Beau teaches JavaScript
freeCodeCamp.org
21 Miscellaneous Front End Updates - Live Coding with Jesse
Miscellaneous Front End Updates - Live Coding with Jesse
freeCodeCamp.org
22 Merging a Pull Request from GitHub - Live Coding with Jesse
Merging a Pull Request from GitHub - Live Coding with Jesse
freeCodeCamp.org
23 React + Prettier + Standard JS - Live Coding with Jesse
React + Prettier + Standard JS - Live Coding with Jesse
freeCodeCamp.org
24 React: Sortable Responsive Table - Live Coding with Jesse
React: Sortable Responsive Table - Live Coding with Jesse
freeCodeCamp.org
25 Geolocation Sorting by Distance - Live Coding with Jesse
Geolocation Sorting by Distance - Live Coding with Jesse
freeCodeCamp.org
26 Tradeoff Matrix - Agile Software Development
Tradeoff Matrix - Agile Software Development
freeCodeCamp.org
27 The Definition of Ready - Agile Software Development
The Definition of Ready - Agile Software Development
freeCodeCamp.org
28 Getting first React job without experience - Ask Preethi
Getting first React job without experience - Ask Preethi
freeCodeCamp.org
29 React: Google Analytics Click Tracking - Live Coding with Jesse
React: Google Analytics Click Tracking - Live Coding with Jesse
freeCodeCamp.org
30 Submitting a PR to an Open Source Project - Live Coding with Jesse
Submitting a PR to an Open Source Project - Live Coding with Jesse
freeCodeCamp.org
31 Should I go back to school to get CS degree? - Ask Preethi
Should I go back to school to get CS degree? - Ask Preethi
freeCodeCamp.org
32 Hero Section CSS Changes - Live Coding with Jesse
Hero Section CSS Changes - Live Coding with Jesse
freeCodeCamp.org
33 Working Agreement - Agile Software Development
Working Agreement - Agile Software Development
freeCodeCamp.org
34 A day at Pennybox with Co-Founder Reji Eapen
A day at Pennybox with Co-Founder Reji Eapen
freeCodeCamp.org
35 React: Sorting and Filtering Data - Live Coding with Jesse
React: Sorting and Filtering Data - Live Coding with Jesse
freeCodeCamp.org
36 React: Sorting and Filtering Data Part 2 - Live Coding with Jesse
React: Sorting and Filtering Data Part 2 - Live Coding with Jesse
freeCodeCamp.org
37 React: Building a New UI - Live Coding with Jesse
React: Building a New UI - Live Coding with Jesse
freeCodeCamp.org
38 Definition of Done - Agile Software Development
Definition of Done - Agile Software Development
freeCodeCamp.org
39 Getting started with jQuery (tutorial) - Beau teaches JavaScript
Getting started with jQuery (tutorial) - Beau teaches JavaScript
freeCodeCamp.org
40 Making a React Blog with WordPress Content - Live Coding with Jesse
Making a React Blog with WordPress Content - Live Coding with Jesse
freeCodeCamp.org
41 React, NextJS, CSS - Live Coding with Jesse
React, NextJS, CSS - Live Coding with Jesse
freeCodeCamp.org
42 jQuery events - Beau teaches JavaScript
jQuery events - Beau teaches JavaScript
freeCodeCamp.org
43 React/NextJS Routing and WordPress API Custom Types - Live Coding with Jesse
React/NextJS Routing and WordPress API Custom Types - Live Coding with Jesse
freeCodeCamp.org
44 React: Working with API Data - Live Coding with Jesse
React: Working with API Data - Live Coding with Jesse
freeCodeCamp.org
45 React: Refactoring Components - Live Streaming with Jesse
React: Refactoring Components - Live Streaming with Jesse
freeCodeCamp.org
46 jQuery effects - Beau teaches JavaScript
jQuery effects - Beau teaches JavaScript
freeCodeCamp.org
47 More React Refactoring - Live Coding with Jesse
More React Refactoring - Live Coding with Jesse
freeCodeCamp.org
48 animate in jQuery - Beau teaches JavaScript
animate in jQuery - Beau teaches JavaScript
freeCodeCamp.org
49 "Finishing" My React Site - Live Coding with Jesse
"Finishing" My React Site - Live Coding with Jesse
freeCodeCamp.org
50 Starting a New React Project (P2D1) - Live Coding with Jesse
Starting a New React Project (P2D1) - Live Coding with Jesse
freeCodeCamp.org
51 React Project 2 Day 2: Learning Material UI - Live Coding with Jesse
React Project 2 Day 2: Learning Material UI - Live Coding with Jesse
freeCodeCamp.org
52 The Agile Manifesto - Agile Software Development
The Agile Manifesto - Agile Software Development
freeCodeCamp.org
53 jQuery: get and set with http, text, val, and attr - Beau teaches JavaScript
jQuery: get and set with http, text, val, and attr - Beau teaches JavaScript
freeCodeCamp.org
54 React Project 2 Day 3 - Live Coding with Jesse
React Project 2 Day 3 - Live Coding with Jesse
freeCodeCamp.org
55 The INVEST approach to product backlog items
The INVEST approach to product backlog items
freeCodeCamp.org
56 React Project 2 Day 4 - Live Coding with Jesse
React Project 2 Day 4 - Live Coding with Jesse
freeCodeCamp.org
57 Chickens and Pigs - Agile Software Development
Chickens and Pigs - Agile Software Development
freeCodeCamp.org
58 React Project 2 Day 5 - Live Coding with Jesse
React Project 2 Day 5 - Live Coding with Jesse
freeCodeCamp.org
59 jQuery: add and remove DOM elements - Beau teaches JavaScript
jQuery: add and remove DOM elements - Beau teaches JavaScript
freeCodeCamp.org
60 React Project 2 Day 6 - Live Coding with Jesse
React Project 2 Day 6 - Live Coding with Jesse
freeCodeCamp.org

Related AI Lessons

How Kenyan developers are beating AI inflation with $2/month (KSh260/month)
Kenyan developers are using affordable AI alternatives to beat inflation, with options like SimplyLouie costing $2/month (KSh260/month)
Dev.to AI
9 Python Libraries That Make Automation Ridiculously Easy
Discover 9 Python libraries that simplify automation tasks, saving you time and effort
Medium · Python
7 AI Tools That Pay You to Use Them in 2025 (With Proof)
Learn about 7 AI tools that offer affiliate programs paying 30-40% recurring commissions, and how to leverage them for passive income.
Dev.to AI
Stop Yelling at Your AI — It Can’t Hear You
Learn to effectively interact with AI tools by understanding their limitations and using proper input methods, rather than resorting to yelling or aggressive language.
Medium · AI
Up next
Claude Design Just Dropped, And It's A Game Changer
Mervin Praison
Watch →