Photo of a Resolume 3 rig (CC) Retinafunk.

When it comes to controlling software, let’s put it bluntly: OSC good, MIDI bad. With OSC, it’s possible to control the array of things software might do, with easy use of high-resolution data, descriptive names in plain English (or your language of choice), a path hierarchy that makes it easier to structure messages in modular software, and smart networking features that makes assignment and communication a breeze. With MIDI, um… well, prepare for lots of mucking around.

Happily, visual software developers proprietary and open source alike have done what music developers generally haven’t – embrace OSC. Thanks to the fact that this community is unburdened by tradition and commercial development tends to involve small, responsive teams, change hasn’t been so tough.

So, visualists, it’s time to reap the fruit of that development work, and make the live performance rig work the way you’ve always dreamt it should work. Our friend Gian Pablo (check out his fantastic blog) clues us in to some recent developments with Resolume 3 “Avenue.”

First stop: be sure to read the full OSC thread on the forums, starting with how Resolume Avenue’s OSC receive implementation works:

OSC manual
OSC section of the manual

That’ll get you started controlling Resolume Avenue with Processing, which could make for some cool integration of your custom-coded Processing visuals with a more traditional Resolume visual or A/V set.

Last week, though, we got into some other interesting details in that thread, like how to control the BPM thread and an undocumented feature:

Page 3 of the thread

Specifically:

There is an undocumented feature that enables you to send OSC messages from the mapping panel.
This way you can quickly find out what messages you’ll need to send to specific objects.
1. Shutdown Resolume if running
2.Open the ‘config.xml’ file in ‘My DocumentsResolume Avenue 3preferences’ and look for the OSC section.
3. Change the section:
<send enabled="0" .. to <send enabled="1"
4. Change the port and address to whatever is appropiate for your setup.

That also holds the promise of Resolume sending as much as it receives – no reason visual software has to be receive-only. Also, this illustrates that we need a basic protocol that allows auto-discovery of OSC-controllable parameters, but that’s a separate discussion.

Have a look and let us know what you think. And feel free to share your results across different applications (not just Resolume) on Noisepages — even if it’s a quick message to say, “darnit, I’m confused about all this and don’t know where to start.”

Noisepages OSC Group
[Warning: Noisepages is in beta – we need your participation to see how it’s used and to fix bugs, so join the Help & Development group to provide feedback, and expect more features / slicker look in the coming weeks and months]