Audio Plug-ins Designed with Faust
Have you always wondered how your favorite VST reverb works in Ableton or do you just want to learn an easy way to design your own plug-ins or MaxMSP objects? The CCRMA audio plug-ins design workshop is what you're looking for.
After a quick introduction to the theory of signal processing, we will use Faust to implement our first audio effects from scratch. Faust (Functional AUdio STream) is a high-level programming language for digital signal processing which lies between C++ and music programming language such as SuperCollider, CSOUND, etc. It provides a special support for real-time audio plug-in environments like VST, Audio-Units, LADSPA, LV2, etc. Faust can also be used to easily create standalone applications and unit generators for a broad array of platforms: PureData, SuperCollider, MaxMSP, CSOUND, etc. on Mac OSX, Linux and Windows.
While simple elements such as delays, sine oscillators, etc., will be made first, more complex sound processor will be built toward the end of the workshop. Eventually, participants will make their own filters, panner, distortion, chorus, flanger, phaser, reverbs, etc.
Our hope is that by the end of the week, you will have a full collection of home-brewed plug-ins usable with your favorite mixing software or music programming language!
The workshop will end by an optional evening jam session on CCRMA stage.
Topics to be covered:
- What Faust is, and how it can be used as a complementary tool to sound engineering softwares (Pro Tools, Cubase, Logic, Ableton, Ardour, etc.) and programming environments for music (PD, SuperCollider, MaxMSP, Chuck, CSOUND, etc.).
- Basic intuitive theory of signal processing.
- Audio effects building blocks (mixer, delay, oscillators, etc.) design.
- Simple audio effects (filters, panner, distortion, chorus, flanger, phaser, reverbs, etc.) design.
- Simple synthesizer design (additive, subtractive and frequency modulation (FM)).
- Plug-in control (OSC and MIDI).
- Plug-in user interface design.
This workshop is intended for musicians, makers, engineers, computer scientists, etc. It doesn't require any previous background in computer programming or signal processing and is open to everyone.
It is strongly recommended that participants bring their own laptops. Further technical details (what software (free) you should install prior to the workshop, etc.) will be provided upon registration.
For more informations, feel free to contact me.
See you this summer!