Just the Best Parts: Open Sound Control - Chapter 1.01

The finished, cleaned-up, copy-edited version of this book is available for purchase in PDF, mobi, and epub formats. You get all three formats when you buy the book. Plus, the paid version is where updates are made and contains content not available in the Web version.

OSC: What it is, and why you should care

First, a short answer for what it is, then the reason you should care.

OSC is way for programs or computers to communicate. It’s useful to artists because it can be used to connect any number of different things to one another.

“Things” could be almost anything electronic, from your computer’s mouse and keyboard, to MIDI keyboards, to your smart phone, to game controllers. “Things” also includes computer programs. The programs might be for making music or doing animation or controlling stage lighting or manipulating puppets.

This is not merely boring geek stuff. Think about what you do as an artist, or as a musician or as, well, whatever you do to make life a more interesting experience. If you’re drawing a picture you may be using a pencil or some charcoal to leave some marks on paper. Or perhaps you have a brush and some paints to work on a canvas. Or maybe you’re sitting in front of a Steinway playing some Mozart or Jerry Lee Lewis. You are in some way manipulating something out there based on what’s in your head.

If you’re using something like traditional pencils or paint brushes the idea that you’re doing something “out there” or in some way remote may sound odd. Suppose (as is quite likely) you’re using a tablet or a mouse to create images on your computer. Or you have a MIDI keyboard wired up to some computer or synthesizer. Now you’re kind of doing the same thing as if you were using more traditional tools, but it’s less direct. You may be seeing or hearing things pretty much immediately but you have some intermediary technology in there.

This is not just an academic observation. There are two important things happening here.

One is that how odd or artificial this seems to you is a matter of familiarity and adaption. If you are using an electronic keyboard to play what sounds like piano music you are aware of, but not terribly disturbed by, the fact that you are not playing an actual piano, that there are no piano strings or other mechanical systems involved. Indeed, the absence of these are for many a preference.

Many people take this a step further and use devices that look nothing like conventional music keyboards; they’re more akin to the blinking controls of secret laboratories in 1960’s science fiction movies.

Likewise if you are using a tablet to create drawings in Adobe Photoshop™ you might select a charcoal pencil effect to create a certain look. There’s no charcoal or paper here, and if you’re using the mouse or track pad there’s nothing even like a pencil. Still, there’s probably nothing you find peculiar about this.

Go even further, in both these cases you can not only use artificial tools to get good approximations of real-world effects, but you can also use them to generate notably un-real-world results. There is no fixed relation between the particular tools and the end results; it’s your choice.

The other notable thing is that you can use such to tools to make something happen someplace else, in real-time. It may seem stunningly trivial to say that your computer screen is “someplace else”, but, while close, it is not the same place as where you are drawing. This is certainly more true if you’re using a projector to do drawings for a crowd. And, of course, this holds for using electronics to make music.

You may see some mendacity in this because it is, in many ways, commonplace. But consider the implications: You can use some thing located here, and directly control some other thing over there. The distance between here and there is generally constrained by the length of some wires, and there may also be a limited selection of what things (tablet or electronic keyboard) talk to what other things (drawing or music program). The tablet is probably not playing music; the music keyboard is probably not creating drawings.

And here is where OSC comes in. OSC allows you to “wire up” a greater variety of things, and do so over a much larger distance.

With OSC you could use a Wii game controller to play music. Or sit in the back of a theatre and control stage lighting from your smart phone. Or put on a puppet show controlled by an XBox Kinect tracking the movement of live actors. You could use your drawing tablet to play live music. Or use a music keyboard to generate visuals.

Some programs and devices are ready-made to handle OSC. Others may need a bit of help. In both cases the fundamentals of OSC are the same, and that is what is covered by this book, along with some examples.

Whence OSC

There is, of course, a longer answer for “What is OSC?” The explanation starts not with OSC but with MIDI.

MIDI, an acronym for Musical Instrument Digital Interface, is a music industry specification. Abstractly, it is a formal description of an essentially finite set of commands or instructions.

Colloquially, MIDI is how computers do music.

The MIDI standard was published in 1983. It is both a software and hardware standard; in addition to describing the format of each message, MIDI describes a type of cable connection. It was developed to allow standard way for electronic music devices to communicate.

Using MIDI, some sort of music-data source (such as a keyboard or computer program) can describe, for example, the note A above middle C, with a specific duration and key velocity. It can do it in a way that any number of other devices or programs that work with MIDI will reliably understand.

MIDI is extremely handy. In addition to describing notes and chords, there are MIDI instructions for device and system commands as well. And, while the actual transmission of MIDI commands happens a fairly abstract computer event there are ways to express MIDI commands as disk file. This means you use a computer to compose a musical score in MIDI, save it off as a file, send that text file to someone else, and they can feed it into their own MIDI tools.

So far so good. While immensely useful, and in practice revolutionary, some people found MIDI lacking.