{"id":88986,"date":"2021-11-22T17:00:00","date_gmt":"2021-11-22T17:00:00","guid":{"rendered":"https:\/\/routenote.com\/blog\/?p=88986"},"modified":"2021-11-22T16:28:11","modified_gmt":"2021-11-22T16:28:11","slug":"build-your-own-compressor","status":"publish","type":"post","link":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/","title":{"rendered":"Learn to build your own compressor plugin with this free 8-hour video course"},"content":{"rendered":"\n<p><em>Image Credit: <a href=\"https:\/\/youtu.be\/H1IvfOfBsVQ\">Programming For Musicians<\/a><\/em><\/p>\n\n\n\n<h2 style=\"user-select: auto;\"><span style=\"color: #3366ff; user-select: auto;\">SimpleMBComp from Programming For Musicians has released a free course that teaches you to code your own multi-band compressor in JUCE.<\/span><\/h2>\n\n\n\n<p><strong>SimpleMBComp<\/strong> is a free &#8220;Code With Me&#8221; course from Charles Schiermeyer of Programming For Musicians, that teaches you to build a 3-band compressor with spectrum analyzer using JUCE and modern C++. JUCE is the application framework used to develop plugins such as <a style=\"user-select: auto;\" href=\"https:\/\/routenote.com\/blog\/2rulesynth-free-synthesizer\/\">2RuleSynth<\/a>. Charles takes you through everything from downloading and setting up JUCE and Visual Studio Community for free in Windows or Mac, to building the DSP (Digital Signal Processing) and GUI (Graphical User Interface).<\/p>\n\n\n\n<p>The course is not recommended for beginners. A basic knowledge of C++ and music will come in handy as you&#8217;ll spend a lot of time fixing bugs and error codes. If you&#8217;re interested in learning to build plugins from scratch, <a style=\"user-select: auto;\" href=\"https:\/\/www.programmingformusicians.com\/pfmcpp-enrollment\/\">try PFM&#8217;s C++ Language Fundamentals course here.<\/a> It&#8217;s fairly costly but includes 30 days of 1-on-1 help.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" src=\"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2021\/11\/3298c3eb001bbed90f1d616da66708480096a0a1b6e81bd4f8a2d6e9b831d301.png\" alt=\"The GUI for the plugin you are taught to build\" class=\"wp-image-88989 lazyload\" width=\"503\" height=\"521\"\/><figcaption><em>Image Credit: <a href=\"https:\/\/matkatmusic.gumroad.com\/l\/SimpleMBC?wanted=true&amp;offer_code=freecodecamp\">Programming For Musicians<\/a><\/em><\/figcaption><\/figure><\/div>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>The videos for the course are split as follows:<\/p>\n\n\n\n<h3><strong>DSP (3hr 31min):<\/strong><\/h3>\n\n\n\n<ul><li>Part 1 Mac &amp; Windows Setup 43:21<\/li><li>Part 2 Anatomy of an Audio Plugin 15:16<\/li><li>Part 3 Compressor Theory of Operation 11:08<\/li><li>Part 4 Compressor Parameters 11:32<\/li><li>Part 5 The First Compressor 14:52<\/li><li>Part 6 Creating a CompressorBand 5:30<\/li><li>Part 7 DSP Roadmap &amp; Intro to Multiband Filtering 9:08<\/li><li>Part 8 Param Namespace 10:57<\/li><li>Part 9 Linkwitz-Riley Filters 13:49<\/li><li>Part 10 Testing the Filter 12:19<\/li><li>Part 11 Filterband Theory 4:34<\/li><li>Part 12 3-Band Filtering 9:00<\/li><li>Part 13 Inverted Allpass Filters 7:21<\/li><li>Part 14 Activating 3 Compressors 11:59<\/li><li>Part 15 Implementing Solo\/Mute\/Bypass 10:05<\/li><li>Part 16 Adding I\/O Gain &amp; Code Cleanup 17:11<\/li><\/ul>\n\n\n\n<h3><strong>GUI (4 hr 45 min):<\/strong><\/h3>\n\n\n\n<ul><li>Part 17 GUI Roadmap 5:47<\/li><li>Part 18 Placeholder Components 6:00<\/li><li>Part 19 Global Controls 21:03<\/li><li>Part 20 Rotary Slider With Labels 26:44<\/li><li>Part 21 Compressor Band Controls Pt. 1 10:02<\/li><li>Part 22 Compressor Band Controls Pt. 2 14:20<\/li><li>Part 23 Compressor Band Controls Pt. 3 12:58<\/li><li>Part 24 Band Select Functionality Pt. 1 17:17<\/li><li>Part 25 Band Select Functionality Pt. 2 9:08<\/li><li>Part 26 Separate Files Refactor 14:36<\/li><li>Part 27 Band Select Functionality Pt. 3 18:08<\/li><li>Part 28 Spectrum Analyzer Pt. 1 19:43<\/li><li>Part 29 Spectrum Analyzer Pt. 2 23:25<\/li><li>Part 30 Spectrum Analyzer Pt. 3 32:00<\/li><li>Part 31 Spectrum Analyzer Pt. 4 26:19<\/li><li>Part 32 ControlBar 19:25<\/li><li>Part 33 ColorScheme 6:59<\/li><li>Part 34 Loose Ends 1:14<\/li><\/ul>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><strong>SimpleMBComp<\/strong> comes with compiled AU\/VST3 audio plugins for Windows and macOS, plus help via Slack Workspace if you get stuck. <a style=\"user-select: auto;\" href=\"https:\/\/matkatmusic.gumroad.com\/l\/SimpleMBC?wanted=true&amp;offer_code=freecodecamp\">Head here to download the full course and enter FreeCodeCamp at checkout.<\/a> From here you can donate as much as you&#8217;d like, or head to <a style=\"user-select: auto;\" href=\"https:\/\/www.programmingformusicians.com\/simplembcomp\/\">Programming For Musicians<\/a> to purchase the $49 written tutorial, which includes access to the Scripted Git Repository. Alternatively, <a style=\"user-select: auto;\" href=\"https:\/\/youtu.be\/H1IvfOfBsVQ\">find the entire tutorial on YouTube here.<\/a> Once you&#8217;ve completed this course, explore the rest of Programming For Musicians&#8217; free and paid course, such as the free 5-hour course <strong style=\"user-select: auto;\">PFM:SimpleEQ<\/strong>, which teaches you to build a basic 3-band equalizer.<\/p>\n\n\n\n<div class=\"btn-wrapper\">\n    <a href=\"https:\/\/matkatmusic.gumroad.com\/l\/SimpleMBC?wanted=true&amp;offer_code=freecodecamp\" class=\"btn-image\"><\/a>\n<\/div>\n<style>\n    .btn-wrapper {\n        display: block;\n        width: 100%;\n        text-align: center;\n        margin-bottom: 2rem;\n    }\n    .btn-image {\n        width: 222px;\n        height: 39px;\n        display: inline-block;\n        text-decoration: none;\n        background-size: cover;\n        background-position: 0 0;\n        background-repeat: no-repeat;\n        background-image: url('http:\/\/routenote.com\/blog\/wp-content\/uploads\/2021\/02\/Download-Button-sprite.png');\n    }\n    .btn-image:hover {\n        background-position: 0 -39px;\n    }\n<\/style>\n","protected":false},"excerpt":{"rendered":"<p>SimpleMBComp from Programming For Musicians has released a free course that teaches you to code your own multi-band compressor in JUCE.<\/p>\n","protected":false},"author":9,"featured_media":88987,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[6374],"tags":[8713,6847,3640,883,6521,20465,14128],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v18.4.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Learn to build your own compressor plugin with this free 8-hour video course - RouteNote Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Learn to build your own compressor plugin with this free 8-hour video course - RouteNote Blog\" \/>\n<meta property=\"og:description\" content=\"SimpleMBComp from Programming For Musicians has released a free course that teaches you to code your own multi-band compressor in JUCE.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/\" \/>\n<meta property=\"og:site_name\" content=\"RouteNote Blog\" \/>\n<meta property=\"article:published_time\" content=\"2021-11-22T17:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-11-22T16:28:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2021\/11\/maxresdefault.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tom Newman\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https:\/\/routenote.com\/blog\/#organization\",\"name\":\"RouteNote\",\"url\":\"https:\/\/routenote.com\/blog\/\",\"sameAs\":[],\"logo\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/routenote.com\/blog\/#logo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2020\/11\/routenote-logo.jpg\",\"contentUrl\":\"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2020\/11\/routenote-logo.jpg\",\"width\":1000,\"height\":1000,\"caption\":\"RouteNote\"},\"image\":{\"@id\":\"https:\/\/routenote.com\/blog\/#logo\"}},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/routenote.com\/blog\/#website\",\"url\":\"https:\/\/routenote.com\/blog\/\",\"name\":\"RouteNote Blog\",\"description\":\"The World of Digital Music - Distribution - Stores and Free Music\",\"publisher\":{\"@id\":\"https:\/\/routenote.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/routenote.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2021\/11\/maxresdefault.jpeg\",\"contentUrl\":\"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2021\/11\/maxresdefault.jpeg\",\"width\":1280,\"height\":720,\"caption\":\"The GUI for the plugin you are taught to build\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#webpage\",\"url\":\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/\",\"name\":\"Learn to build your own compressor plugin with this free 8-hour video course - RouteNote Blog\",\"isPartOf\":{\"@id\":\"https:\/\/routenote.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#primaryimage\"},\"datePublished\":\"2021-11-22T17:00:00+00:00\",\"dateModified\":\"2021-11-22T16:28:11+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/routenote.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Learn to build your own compressor plugin with this free 8-hour video course\"}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#webpage\"},\"author\":{\"@id\":\"https:\/\/routenote.com\/blog\/#\/schema\/person\/c60547d8a210a794c037e6b1450a9626\"},\"headline\":\"Learn to build your own compressor plugin with this free 8-hour video course\",\"datePublished\":\"2021-11-22T17:00:00+00:00\",\"dateModified\":\"2021-11-22T16:28:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#webpage\"},\"wordCount\":436,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/routenote.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2021\/11\/maxresdefault.jpeg\",\"keywords\":[\"Coding\",\"compressor\",\"free download\",\"plugin\",\"programming\",\"video course\",\"VST3\"],\"articleSection\":[\"Software\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#respond\"]}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/routenote.com\/blog\/#\/schema\/person\/c60547d8a210a794c037e6b1450a9626\",\"name\":\"Tom Newman\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/routenote.com\/blog\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5da7d72f206ebde5e8c57869795c438f?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5da7d72f206ebde5e8c57869795c438f?s=96&d=blank&r=g\",\"caption\":\"Tom Newman\"},\"sameAs\":[\"https:\/\/routenote.com\/blog\/author\/tom\/\",\"https:\/\/www.instagram.com\/tomnew1000\/\",\"https:\/\/www.linkedin.com\/in\/tomnewman3\"],\"url\":\"https:\/\/routenote.com\/blog\/author\/tom\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Learn to build your own compressor plugin with this free 8-hour video course - RouteNote Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/","og_locale":"en_US","og_type":"article","og_title":"Learn to build your own compressor plugin with this free 8-hour video course - RouteNote Blog","og_description":"SimpleMBComp from Programming For Musicians has released a free course that teaches you to code your own multi-band compressor in JUCE.","og_url":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/","og_site_name":"RouteNote Blog","article_published_time":"2021-11-22T17:00:00+00:00","article_modified_time":"2021-11-22T16:28:11+00:00","og_image":[{"width":1280,"height":720,"url":"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2021\/11\/maxresdefault.jpeg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Written by":"Tom Newman","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Organization","@id":"https:\/\/routenote.com\/blog\/#organization","name":"RouteNote","url":"https:\/\/routenote.com\/blog\/","sameAs":[],"logo":{"@type":"ImageObject","@id":"https:\/\/routenote.com\/blog\/#logo","inLanguage":"en-US","url":"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2020\/11\/routenote-logo.jpg","contentUrl":"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2020\/11\/routenote-logo.jpg","width":1000,"height":1000,"caption":"RouteNote"},"image":{"@id":"https:\/\/routenote.com\/blog\/#logo"}},{"@type":"WebSite","@id":"https:\/\/routenote.com\/blog\/#website","url":"https:\/\/routenote.com\/blog\/","name":"RouteNote Blog","description":"The World of Digital Music - Distribution - Stores and Free Music","publisher":{"@id":"https:\/\/routenote.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/routenote.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"ImageObject","@id":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#primaryimage","inLanguage":"en-US","url":"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2021\/11\/maxresdefault.jpeg","contentUrl":"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2021\/11\/maxresdefault.jpeg","width":1280,"height":720,"caption":"The GUI for the plugin you are taught to build"},{"@type":"WebPage","@id":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#webpage","url":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/","name":"Learn to build your own compressor plugin with this free 8-hour video course - RouteNote Blog","isPartOf":{"@id":"https:\/\/routenote.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#primaryimage"},"datePublished":"2021-11-22T17:00:00+00:00","dateModified":"2021-11-22T16:28:11+00:00","breadcrumb":{"@id":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/routenote.com\/blog\/build-your-own-compressor\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/routenote.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Learn to build your own compressor plugin with this free 8-hour video course"}]},{"@type":"Article","@id":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#article","isPartOf":{"@id":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#webpage"},"author":{"@id":"https:\/\/routenote.com\/blog\/#\/schema\/person\/c60547d8a210a794c037e6b1450a9626"},"headline":"Learn to build your own compressor plugin with this free 8-hour video course","datePublished":"2021-11-22T17:00:00+00:00","dateModified":"2021-11-22T16:28:11+00:00","mainEntityOfPage":{"@id":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#webpage"},"wordCount":436,"commentCount":0,"publisher":{"@id":"https:\/\/routenote.com\/blog\/#organization"},"image":{"@id":"https:\/\/routenote.com\/blog\/build-your-own-compressor\/#primaryimage"},"thumbnailUrl":"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2021\/11\/maxresdefault.jpeg","keywords":["Coding","compressor","free download","plugin","programming","video course","VST3"],"articleSection":["Software"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/routenote.com\/blog\/build-your-own-compressor\/#respond"]}]},{"@type":"Person","@id":"https:\/\/routenote.com\/blog\/#\/schema\/person\/c60547d8a210a794c037e6b1450a9626","name":"Tom Newman","image":{"@type":"ImageObject","@id":"https:\/\/routenote.com\/blog\/#personlogo","inLanguage":"en-US","url":"https:\/\/secure.gravatar.com\/avatar\/5da7d72f206ebde5e8c57869795c438f?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5da7d72f206ebde5e8c57869795c438f?s=96&d=blank&r=g","caption":"Tom Newman"},"sameAs":["https:\/\/routenote.com\/blog\/author\/tom\/","https:\/\/www.instagram.com\/tomnew1000\/","https:\/\/www.linkedin.com\/in\/tomnewman3"],"url":"https:\/\/routenote.com\/blog\/author\/tom\/"}]}},"jetpack_featured_media_url":"https:\/\/routenote.com\/blog\/wp-content\/uploads\/2021\/11\/maxresdefault.jpeg","_links":{"self":[{"href":"https:\/\/routenote.com\/blog\/wp-json\/wp\/v2\/posts\/88986"}],"collection":[{"href":"https:\/\/routenote.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/routenote.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/routenote.com\/blog\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/routenote.com\/blog\/wp-json\/wp\/v2\/comments?post=88986"}],"version-history":[{"count":0,"href":"https:\/\/routenote.com\/blog\/wp-json\/wp\/v2\/posts\/88986\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/routenote.com\/blog\/wp-json\/wp\/v2\/media\/88987"}],"wp:attachment":[{"href":"https:\/\/routenote.com\/blog\/wp-json\/wp\/v2\/media?parent=88986"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/routenote.com\/blog\/wp-json\/wp\/v2\/categories?post=88986"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/routenote.com\/blog\/wp-json\/wp\/v2\/tags?post=88986"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}