Learn to program rich interactive audio applications. A workshop for those who love sound, music, and computing. Put away your patch cords and see how it feels to type a signal chain.
This two day workshop will acquaint participants with the glorious fusion of audio units with openframeworks.
About audio units/core audio: The Audio Unit Framework is a Mac OS X architecture for audio plugins similar to VST. Audio Units can be audio file players, effects(like delay or filter), samplers, synths, mixers, audio input/output and more. Audio Units can be chained to together to create a signal chain ( or graph ).
Every Mac comes with a selection of basic audio units and many more can be downloaded for free or purchased. Normally, people experience audio units in the context of another program such as Logic Pro, Garageband, or Ableton. Futhermore, nearly every app that uses interactive sound, desktop or mobile, is using audio units under the hood. In the this class we will learn to program our own interactive sound/music apps .
About openframeworks: openframeworks audio unitsopenframeworks is an open source C++ library created for the purpose of empowering artists and creators. It allows artists to express themselves through the exploration and manipulation of the data inside digital media at the deepest level. At the core, OF allows users to easily manipulate graphics, images, audio, video, and type. OF also comes with a set of core addons that allows users to work with 3D models, networking, computer vision, OSC, vector graphics, and XML. This is but the tip of the iceberg. At last count there were 1046 3rd party addons making OF a truly versatile and current tool. Much more than just a set of c++ libraries and addons, openframeworks has a rich community here in NYC, online, and around the world. Active forums and constant development make openframeworks a truly exciting project to be a part of.
How they fit together: Core audio is known for its high level of difficulty and steep learning curve while openframeworks is known for its ease of use and for being easy to jump into. Its almost impossible to imagine how they could work together…. Lucky for us, @admsyn created ofxAudioUnit, a well-documented addon that allows OF users to easily use the audio unit framework without dealing with inner complexities of the audio unit framework! Both OF and AUs run on iOS so any app you create on your desktop can be compiled to run on iOS with minimal changes.
Combining AUs with OF is perfect for creating musical instruments with novel controllers, generative music, interactive music playback systems, audio-reactive visuals, and of course experimental sound art.
Participants will start by learning to load audio units into OF. We will study three sound sources: audio file players, audio input, and sampler/synths. We will build signal chains by adding effects to these sound sources, and then use mixers to control the flow of sound. Participants will learn to control the parameters of each unit and to programmatically send midi messages to sampler/synths. Finally, we will get the waveform data, the RMS amplitude, the dB, and the FFT of signals passing through that signal chain, and make simple visualizations of these values. If time allows we may delve into some basic algorithms and data structures for making music.
Pre-requisites: Programming background and love of music is required.
Note: For Mac OS X only! Students must bring headphones.