3rd party iTunes jukebox
Did you ever sit and spend time copying music from your one computer to your Mac so you could listen to it there instead? Did you ever wish there was an easier way of sharing this music? There is. It’s called [“Bonjour”:http://www.apple.com/macosx/features/bonjour/], and it’s another piece of quality software from Apple, albeit proprietary (open source, though). I’ve written this guide to help you install and setup your linux machine to continously scan a folder recursively, pick up MP3, AAC and other musicformats and expose those over the network to any iTunes (OSX or Windows) and have those available for streaming on-demand. Sort of like an advanced multithreaded jukebox.
First we’ll look at what software is required, and then the inner workings of this. I was actually going to write this software on my own since I think it’s a great idea, but it turns out, someone already has. 2 years ago. This is where [“daapd”:http://www.deleet.de/projekte/daap/daapd/] comes in. It’s written by Alexander Oberdörster. It simply does what we want it to do. It stays out of your way, scans a folder recursively for musicfiles, and streams these to the subnet via Bonjour (read: mDNS) to the subnet and iTunes will simply pick up on it. It uses something called mDNSResponder for this, which is part of both the “Apple Bonjour source”:http://developer.apple.com/darwin/projects/bonjour/ and [“howl”:http://www.porchdogsoft.com/products/howl/]. Indeed mans new best friend.
Follow the instructions on daapd’s site to compile and install this, with just a few minor modifications (at least on my part); I want to use libhowl to broadcast on mDNS, not Apple’s mDNSResponder. daapd supports this natively in the source. This means that daapd will announce itself on the network rather than using other software for it.
Open up makefile'' in the daapd distribution, and changeENABLE_HOWL = 0” to a “1”. make && make install.
Now, you want to set up the configuration of daapd. Mine looks like this:
Port 3689 ServerName iTunes DBName Aida Jukebox Password Root /storage/music Cache /home/jespern/.daapd-cache Timescan 2 Rescan 1
Notice that I have not defined a password. This is because iTunes does not support this, so leave it blank.
Before you run daapd, you must run the mDNSResponder from howl. Then you simply just start daapd;
[aida/jespern] ~ > daapd -c daapd.conf scanning /storage/music for audio files... done distributeUpdates
Cool. What happens on my Mac? !http://printf.dk/img/itunes.png(Exactly what should happen)! Exactly what should happen. I’m happy.
Now we just need a Bonjour plugin in Amarok…