The problem of streaming audio from one computer to another has cropped up a few times over the years in different forms. I had to solve this again recently, but this time around I really like the solution.
I use two computers in my apartment. My black MacBook is attached to a 24″ Dell monitor in the bedroom. I also have a 2006 Mac mini plugged into my projector and home theater in the living room. My Drobo is attached to the mini and holds my music collection. I do most of my work on the machine in the bedroom and use iTunes to mount the library over the network. If I want to listen to music in the living room, I close iTunes and then connect to the mini using VNC and reopen it. This lets me maintain a consistent library and manage my music from whatever machine I’m using.
The problem crops up when I’m changing locations a lot. I want to hear audio in the bedroom and also in my living room where the speakers are WAY better. In the past I used MPD so I would have one player with multiple controlling clients. I didn’t want to get rid of iTunes though. I discovered the Enlightened Sound Daemon around the same time as MPD because I wanted to stream the MPD audio back to the client computer. Luckily, someone had written instructions for how to use it on a Mac. I didn’t want such a low level solution though and continued looking.
The simplest solution would be to purchase an AirPort Express and use AirTunes to send music to it from my MacBook. I didn’t want to spend the money though since I already have a perfectly good machine plugged into the stereo. Rogue Amoeba makes a $25 piece of software called Airfoil to send any audio to an AirPort Express. It can also send audio to any computer using Airfoil Speakers. This was what I needed but I didn’t like the price since I’m just sending it to one device. I continued looking.
I finally found an excellent post by Adam Knight about Playing Live Audio on Another Mac. To do this you need to install Soundflower to capture audio destined for the computer’s output. The magic is using AU Lab to create a bonjour audio stream. AU Lab is a program that’s part of Apple’s free developer tools. The Mac mini in the living room has AU Lab listening all the time so whenever I switch the output on my Macbook to Soundflower, it immediately starts broadcasting audio to the other room. Perfect.
If you follow Adam’s guide, the audio on your host machine will be muted. You just need to start up Soundflowerbed and select the output to turn it back on. I also installed the free SoundSource from Rogue Amoeba so I could easily switch outputs without having to open a preference pane.
The big win of this over AirTunes is that it works with ALL audio not just iTunes; I can listen to Blip, Pandora, or Radio 1 if I want.