Grid makes laptops sing


Last week, I spoke with an editor from the International Science Grid This Week about our research in laptop orchestras.  She was particularly interested in our work with computational grid frameworks like SAGA in support of laptop orchestra performances. Our software, GRid ENabled Deployment for Laptop orchestras (GRENDL), has received some interesting notice, both at recent SIGGRAPH and SEAMUS conferences. But this is our first notice in the press on the subject.

Grid makes laptops sing | iSGTW.

Advertisements

Internet Music Score Library Project Raises Copyright Concerns – NYTimes.com


I remember when this project first came online. It reminded me of Dover scores, a collection of low-cost reprints of classical piano, orchestra and string quartet music. What Dover did was find old music editions that were out of copyright, scan them, and reprint them in a collected fashion.  Everyone knew that these were not “critical” editions, and they didn’t include parts for orchestral pieces. But having large full size scores of all the Beethoven symphonies, or Mozart Piano Concertos, or string quartets, or Debussy orchestral music for a nominal cost was sheer joy to a young composer like me.

The IMSL is not much different from this, except it’s broader and user-driven.  The purpose of copyright is to protect the rights of the composer and publisher. But when music is out-of-copyright, it should be open and available to whomever, wherever. I just don’t see this as being so different than what Dover started doing 30+ years ago.

Internet Music Score Library Project Raises Copyright Concerns – NYTimes.com.

Two articles about the Laptop Orchestra of Louisiana


We were visited yesterday by some brave reporters from the Daily Reveille, LSU’s student newspaper. They came to talk with us about our upcoming Winter Tour and take pictures and video of us rehearsing. So we knew we should expect an article in the paper soon.

Well, we were blessed with a bonanza of press: a front-page article, an op-ed and a great video clip.  Here they are:

Articles:

Laptop Orchestra of Louisiana rehearsal video.

A Burning Tradition in South Louisiana


The setting of bonfires along the levee is one of the more charming traditions in South Louisiana. If you’re here at Christmas time, it’s certainly worth going down there to see.  That is unless, of course, you’re going out for Chinese food and a movie.

2theadvocate.com | Latest News | Burning tradition — Baton Rouge, LA.

Too much fun at my job – Part 2


For the past few days, I’ve toyed with the Kinect sensor. In order to use the sensor, I downloaded the freenect library, as well as a freenect wrapper for both Processing (courtesy of Daniel Shiffman) and Max (courtesy of Jean-Marc Pelletier). After a bit of experimentation, I started working with the jit.freenect.grab object for Jitter.

By combining the jit.freenect.grab object with some computer vision processors (OpenCV – also thanks to JMP), I built a quick & dirty kinect-controlled synthesizer in Max.  X/Y position of your hands (or head or legs) determines pitch/amplitude, and Z position triggers sound events on and off.

I’m thinking of this interface as a kind of virtual curtain. Put your hand through the curtain, and you make sounds. Move your hands around, and the sounds change accordingly. Pull them behind the curtain and the sound stop. It’s a pretty simple mapping, and I will incorporate more CV tracking to influence sound generation (direction, # of features, optical flow), and to build more complex sound objects. Right now, it’s just 16 voices of sine waves, but I’m thinking of using granular textures as well as virtual objects that will make sounds when “hit.” (Working title of this project is “Pay No Attention” as in “pay no attention to the man behind the curtain” from The Wizard of Oz).

I’ll post a video of what this looks like after the holiday break.  I need to spend some time thinking about how to give this interface a non-trivial mapping, and the kind of “virtual instrument” I want to compose for. And after talking with Brygg Ullmer, I’m now thinking that this may be something that could be adapted for our laptop orchestra, the LOLs.

The good news is that I’ve had the time to become totally engrossed in working on this. The bad news is that I lose all sense of time when that happens. What is certain is that I have way, way too much fun at my job.

Links:

  • Git repository for OpenKinect freenect library
  • Daniel Shiffman’s Processing library for freenect
  • Jean-Marc Pelletier’s Max/Jitter objects for freenect
  • Jean-Marc Pelletier’s OpenCV objects for Max/Jitter

I have too much fun at my job.


For Chanukah, I had bought an X-box with Kinect for the family, and I knew that people have been hacking the Kinect sensor to use in other applications and computers.  The Kinect sensors sold out very quickly here, and they were gone online almost as quickly. Bottom line, I couldn’t get the sensor by itself.  And unfortunately, the Kinect that comes with the X-box uses a slightly different connector (not USB), so the only real option is to get the standalone sensor, which is USB.

Over the weekend, I was in Wal-Mart (no snickering), looking for a second wireless controller for our new X-box so that Charlie and I could play FIFA11 together.   As I’m browsing the electronics section, I notice that they have a couple of Kinect sensors under lock and key. I ask the clerk if they were for sale, and sure enough, they had just arrived. 

So now, I’m having way too much fun playing with the Kinect sensor. I have modules built-in both Processing and Max, and will probably spend the rest of the year developing more software for it. Learning how to program this will force me to dig deeper into the video processing tools of both environments (which I’ve wanted to do for a while), as well as give me a specific direction for my work.

So far, I have learned that with a bit of planning, I should be able to make Kinect read my gestures, enabling me to use it as a performance controller. The hard part (and this is always the hard part) will be creating a performance controller that does interesting things. But doing the hard part is also what I love to do most.