Processing & Reaktor 5
Recently I’ve taken an interest in audio-reactive visuals, image-reactive audio and other fun combinations of sound and visuals. I’ve also been working with Reaktor 5, so it made sense to connect the two. There are different ways to do this. Here’s a brief account of three methods I’ve been trying out lately. I’m not sure yet what I wanna make exactly so these are just experiments right now.
The first way to connect Processing with audio programs is via the oscP5 library. This enables communication through the widely used OpenSound Control (OSC) format. Once you figure out how to do it, it’s actually fairly easy. I’ve succesfully sent messages from Processing to Reaktor. The messages (and values) can be assigned to individual items in the ensemble. For example a knob which controls the filter, delay, modulation or whatever you want. Go to the properties window to assign OSC as the controller. If the correct messages are received, the knobs are twisted!
The second option I tried, was connecting the applications via MIDI. To do this I installed MIDI-Yoke, which functions as a sort of digital patch cable between the output of one program and the input of another. I managed to send code-generated MIDI signals from Processing into Reaktor. Cool! Of course this could work for any audio program, for example Ableton Live, Cubase, Pro Tools or Logic Studio. The advantage of relaying the signal into an audio program is obvious (they’re superior at audio!). Sending the signal the other way around (from an audio program into Processing) is also possible. Perhaps to visualise it somehow? There are a lot of interesting possibilities! When it comes to MIDI libraries for Processing, I recommend the MidiBus which I found much easier to use than proMIDI.
All right, the third method I found interesting was using my KORG nanoKEY as the input device. I wanted to send the MIDI data into both Processing and Reaktor at the same time. That was the theory. To put it into practice, I made the schematic you see below. Then I started working on different elements. Right now everything is working as shown, though still in the proof-of-concept phase. But hey, it’s working! Expect some bigger stuff in the future…
Let me elaborate a little on each step of the schematic:
- The KORG nanoKEY is an external input device, really a small keyboard connected via USB.
- For better control and – according to the manual – to send the signal to more than one destination you need to download and install the official USB drivers from the KORG website.
- The same midi signal is sent two ways: Processing and Reaktor.
- I’ve used the midiBus library for Processing to receive the signal. Works great!
- In Processing you can use different elements of the signal (pitch, velocity, control messages).
- Like with everything else, what happens all depends on the sketch you write yourself.
- For Reaktor this isn’t a big step, cause it’s built for this stuff, so turn on the device in the preferences.
- Just play the keyboard, if input is received by Reaktor, the indicator at the top will be lighting up red.
- A lot of Reaktor ensembles accept midi-input. I’ve been trying out several, but there are many!