Party: music, videos and visualisations

I have a birthday party coming up and it’s a milestone year. Appropriately, I’ve invited some people around to my place and – all going to plan – it’ll be a good party. I have put a bit of thought and effort into the entertainment which will be available; mainly in the form of music. I have some large floor-standing speakers (an idea; photo taken during construction), an appropriately powerful amplifier to drive them, and a large collection of high quality music. What else can be done?

Well, there’s the obvious things: lighting and ambience. I’ll be making use of several sets of disco lights: of what type I am as yet unsure, but I imagine they’ll be standard fare. At any rate, that kind of stuff is either simple (random) or complex (programmable); unfortunately I don’t have the equipment or the time to deal with the latter, so the former will have to do. As for ambience, I am also going to have a smoke machine running and probably set up a light-sensitive plasma ball as well.

Then, there are the not so obvious things: video and visualisations. Fortunately in this day and age of high-def YouTube, it is sometimes quite easy to obtain good quality music videos. I have a few and I’ll be putting them to good use, but being able to do so was a small effort in itself (which I’ll get to later). Visualisations are basically mathematic representations or interpretations of the music being played. You’ve probably seen one before, there are some basic ones that come with most media players. Most times you will probably see bars moving up and down or a wiggly-wavy line, these are very simple forms; then there are more elaborate interpretations such as projectM, some of which can produce quite stunning and interesting imagery.

My plan was to make use of projectM in conjunction with my home theatre PC. This would provide an excellent central place to display the visualisations and obviously as my home theatre speakers are already connected, it just makes sense. But what else? Normally in clubs and such (The Met is a great example), they have multiple screens set up doing this kind of thing … how could I do that too? Turns out, pretty easily. PulseAudio is an awesome piece of software for just this purpose. With the click of a few settings I was able to setup my HTPC as a multicasting audio server with my desktop and laptop computers receiving the multicast; now, with projectM running on all three systems, I am able to have an easy to organise multi-screen system which makes use of existing network cabling in my home. The projectM instances on each computer won’t be synchronised (unless I specify a list of presets, but there are literally thousands – maybe I will, but probably not), but I think that’s fine. If they’re all displaying different imagery it just adds to the experience in my opinion.

As for music videos, that was a little more difficult to figure out because I wasn’t aware if it was possible to do what I wanted. There were no media players that support projectM and video playback at the same time; and technically, there still isn’t, but I was able to use qmmp to achieve what I wanted. qmmp allows me to add audio and video files into the same playlist. When qmmp reaches a video title in the playlist it simply launches mplayer to handle the file. mplayer is a handy video utility: it plays pretty much everything and it’s also highly configurable; not having its own graphical front-end makes this a requirement. It was a pretty simple process of reading the mplayer man page, adding a few options to its configuration file and having it behave exactly how I want: on the HTPC television screen, projectM will be fullscreen until a movie is played, whereupon a fullscreen mplayer is launched over the top of the projectM display to play the video file which then automatically exits at the conclusion of the video, at which point the next song plays and the projectM visualisation is once again visible. Neat, huh?

So, I was able to configure qmmp, PulseAudio, projectM and mplayer in such a way that I can remotely control (via vnc, but other options seem viable) the music and video playback for my party. I’m happy!


About this entry