What happens when an interface is no longer locked to the screen? What about making control simply work from your hand, on a different screen, with awareness of the world around it? Simple as the early implementations may be, that’s really the vision behind mobile control applications for music and visuals.
c74 is a lovely iPhone-based app that uses a Max/MSP patch to generate interfaces from a patch that run on your handheld. It isn’t just a control surface, though; access to native APIs on the phone also provide other features.
- GPS for specific location. (How you use that is up to you; I recommend the ability to switch between “West Coast” and “East Coast” beats.)
- Accelerometer data, and specific “shake” gestures.
- Compass orientation.
- Proximity. (That means your proximity to the device, though it’d also be fun with mobile to use Bluetooth to tell when different devices are nearby.)
The external is free. It’s currently Mac OS X-only. (If people respond well, perhaps we can see about a Windows build.) The app itself is paid, but see below — Mac and Max/MSP users, I’ve got some codes to give away.
The app is called c74, but it’s entirely unofficial, the work of Dutch developer Leo van der Veen. (The site even has the cheeky name nr74.org; Cycling ’74, I’d say you have a fan. And, um, I’m glad you’re a small company rather than a litigious big one – that’s better for everyone.)
This isn’t the only app to attempt something like this. The iPhone app Mrmr attempts to produce an entire interface protocol for exchanging templates; I’m collaborating now with the developer of that app on … something. I won’t jinx it by saying more for now; stay tuned. (It’s nothing earth-shaking; I just want to finish it!) The idea of Mrmr is that a performer could beam a control template to a friend, or you could walk up to an art installation and grab the template on your own mobile; eventually, it could even work on different devices (not just Apple ones).
c74 is distinct from that effort in a couple of ways. It’s very specific to the iPhone APIs. It’s really specific to Max, and focuses on generating those templates from a Max patch in a flexible manner. It doesn’t actually even use OpenSoundControl, though the principle is the same – it opens a network socket and communicates wirelessly. (In fact, just as you can represent MIDI messages without using a 5-pin MIDI DIN cable, you can use OSC-formatted messages without needing the whole protocol. And underneath OSC is really just a bunch of standard networking protocols – that’s part of the point. So we almost need another name for general-purpose, open “networking.” Actually, maybe the word “networking” works.)
Right now, there isn’t a whole lot of interoperability between different development environments, different mobile devices (there is a big world beyond iPhone), and different template apps (which are growing in number by the day). But I’m not overly concerned about that. Right now, I think it’s just as well that people try a lot of different experiments.
As that evolves, the next step could really be finding ways of communicating template information in standard ways, based on the real-world experience of how these apps work. TUIO has already caught on as a way of describing multitouch input, as seen first on the ReacTable. What that protocol does is actually fairly cool: it just takes a set of practices used by real artists, and builds the standard protocol around those practices, rather than the other way around. I think it should be possible to continue to expand on these kinds of descriptions.
Want a copy of c74 for your iPhone / iPod touch and your Max 5-running Mac? I have just ten copies to give away. So tell us in comments what Max patch project you’d like to run with this, and convince me that you’ll send us a short video of the results. I’ll take the first ten compelling comments and email you a code. (That means you DO need to leave an email in the comment form; only the site admins and I can see it.)
I’m in touch with Leo, as well, so we’ll certainly keep this discussion going about control in general.
Project site:
http://www.nr74.org/c74.html
Update – important – US ONLY for codes.