All ADC 2021 attendees have access to the ADC 2021 Workshops regardless of ticket type.
Please note that all times are in UTC
During this workshop, you will learn how to create a digital model from a circuit schematic of the Tube Screamer guitar pedal. By the end of the workshop, you will have a functioning audio plug-in of the model. We will use the Discrete Kirchhoff (DK) method of circuit analysis to model the tone section and the clipping section of the pedal.
Experience creating a basic audio plug-in with C++ and the JUCE framework.
Download the course repository here: https://github.com/erictarrbelmont/TSPedal
In this workshop, we will introduce how screen readers fit in the context of accessibility. We will share what we've learned so far from talking to screen reader users. We will show you how to find the screen reader software that's already on your computer, and the development tools that you can use for testing. We'll introduce NSAccessibility and UI Automation, two platform-specific technologies that enable screen reader support, giving an overview of their similarities, and the important terms you should know to begin using them in your application.
In this workshop, we will first show how to translate block diagrams of basic audio effects into Max’s gen~ visual patching language. After patching the effects, we will show how gen~’s C++ export feature can be used to build VSTs . In this workshop, you can expect to learn how gen~ can be a useful tool (even for seasoned DSP programmers) for developing and creating audio effects like filters, phasers, reverbs, and more.
An intermediate level of C++ experience is needed. Not required, but useful is a familiarity with JUCE and/or Max.
Downloading and installing Max beforehand will be needed.
Writing an audio plug-in can be a daunting task: there are a multitude of plug-in formats and DAWs, all with slightly different requirements. This workshop will guide you through the process of creating your first audio plug-in using the JUCE framework.
This workshop will cover:
An introduction to JUCE
During the workshop, attendees will create a simple audio plug-in under the guidance of the JUCE developers
This workshop requires attendees to have a fully-functional version of the most recent JUCE SDK on their computer.
You can clone JUCE using `git` from here https://github.com/juce-framework/JUCE,
or download the latest version of JUCE here https://github.com/juce-framework/JUCE/releases/latest.
Attendees must be able to compile the projects present in the JUCE SDK using the corresponding IDE for their computer: Visual Studio 2019 for Windows, Xcode for macOS, and a Makefile for Linux. This may require installing Visual Studio 2019, Xcode or all of the Linux dependencies.
Open `JUCE\extras\AudioPluginHost\Builds\VisualStudio2019\AudioPluginHost.sln` and build in Visual Studio 2019.
Open `JUCE/extras/AudioPluginHost/Builds/MacOSX/AudioPluginHost.xcodeproj` and build in Xcode.
Run `make` in `JUCE/extras/AudioPluginHost/Builds/LinuxMakefile`.
In this workshop, we’ll talk generally about the need for continuous integration and continuous deployment in a fast paced development environment. We’ll look at the components and strategies involved and some of their alternatives. We’ll start simple by executing all the commands we need locally, and then move this orchestration to Jenkins, an automation server which enables us to build, test, and deploy software. We’ll use Groovy Pipelines in Jenkins to configure the build process, and make it available as part of the checked-in source code. Then we’ll move Jenkins from a local server to the cloud, by leveraging AWS EC2 instances for running Jenkins service on the cloud. We’ll finish off by talking about the master-slave configuration where you can reduce cost and scale up the build servers on demand, by enabling a Jenkins master node to spawn up build servers on demand.
A basic understanding of C++ and JUCE
No Jenkins or Groovy knowledge required.
If you want to follow along with the workshop, you need: