"I love having all my music on my harddrive, but I miss the physicality of records and CDs". It's been said a million times.
So, here's a plan to get back the physicality, and the artwork:
- print out artwork of album covers
- put a wp:DataMatrix tag on the back with the album's location on the computer
- have a pile of albums, and wave them at a camera to play.
wp:DataMatrix is a format for encoding data in patterns of black and white squares: a 2D barcode. There's a nice article about this and it's cousin wp:QRCode here
The main barrier to entry here is finding a decoding libraries. I went with [[1]], which works quite well so far. The main library built cleanly on OSX, but I had to do some fiddling to get the Java wrapper to compile (see instructions)
Once it was compiled, I made a java program using the Processing libraries, and within about 30 minutes I could recognise and decode tags from the laptop camera.
From here it's very easy to adapt the app to send commands to mpd
So what now?
Well, in a way, that's the easy part. The harder bits are:
- making sure that the computer's not constantly chugging away trying to decode frames when there's nothing going on. (It's a server in a cupboard, but I'd rather not stress it unnecessarily so it can save power). Maybe I'll end up with an arduino box connected to it, with the camera and some sensors in...
- setting up a routine for printing out fake album covers
- getting the physical bit right. The tags have to be correctly oriented w.r.t. the camera. I'd like to have as few constraints on use as possible, although I guess there's always the possibility of a dedicated camera-box to put the currently playing album on. It would be more magic to just wave it in the air, though!
It might also be worth looking at zxing, as it seems to do a wide range of barcodes etc. The AR Toolkit might be a possibility, but not sure that it can support enough tags/data.

Technorati Tags: