Update: See below for edits regarding iWatchSyncer.
Most of my music listening occurs on my laptop at work, but most of my music library is on my desktop computer at home. A friend introduced me to Dropbox, which has allowed me to mostly easily transfer music between home and work, but I still had a problem. Often, I'd randomly think of a song that I hadn't heard in a while, and, inevitably, it wouldn't be one of the ones I had transferred to my laptop. Sometimes I'd remember to remedy that when I got home, but I knew I could do better. Finally, as of this past weekend, I can.
I'm still working out some kinks, but I can now:
- Access any song in my library from anywhere (as long as I have internet access, which I do as long as I have my phone and/or a laptop).
- Access my library through an easy-to-remember URL.
- Download any track in my library to whatever computer I'm on (this one doesn't seem to work on my phone yet, unfortunately).
- Play any track from my library, as long as I have the Flash player.
- Add newly acquired music to my library from any computer.
How did I accomplish this wonder of modern technology? Read on. Note: These are instructions for Windows. If you want to do this on Linux, you can probably do it much more easily. If you want to do this on Mac, there's probably a way to do it, but I don't know what that is.
1. Install iTunes.
I would have preferred to do this in a player-neutral manner (particularly because iTunes sucks for the "add to my library" step), but the share-the-library-online program uses your iTunes library, so c'est la vie. The more organized you can get your library in iTunes, the better. Mine is currently terrible, but Lifehacker has at least one post every week about a new tool that will make tagging and organizing your iTunes library easy. So far they haven't, but I keep hoping.
2. Install pulpTunes.
This is the meat of the process, the thing that will share your library. Two things: If you have a router, you'll have to open up port 15000 for it (specifically, you'll have to direct traffic on that port to the machine that's running it). Instructions for how to do that are included, and vary by router. You should also set up a password for it (both an admin and a normal user, if you want to give access to anyone else); that isn't enabled by default. On Vista, it may also be necessary to run this as admin (I'm not sure).
3. Set up Dynamic DNS.
This step isn't strictly necessary (especially if you have a static IP address or don't reboot your router very often), but I wanted to make this easy and stable, so I set it up. Be sure to use the auto-updater app from DynaDNS, so your alias will update if, for example, there's a power outage wherever you're hosting your library.
4. Get Dropbox.
Again, this isn't strictly necessary, but Dropbox is sweet, and adding tracks to your library from anywhere is nice. Set this up on any machine that you use often, but you can also access it online (so anything you put in your Dropbox is already accessible from anywhere, but I'm assuming you want to have more than 2GB of music available).
5. Install iWatchSyncer
I am not in love with this solution yet, but it's the best I've found (Update: It does everything I need it to do; I think the LifeHacker review sold it short, or perhaps I just misunderstood what it did). I wish iTunes would just do this automatically like every other music player, but oh well. Set this up to monitor your Music folder in Dropbox.
In theory, Whenever you dump something into that folder (from anywhere), it'll get added to your iTunes library.
6. Set up all of that stuff to load when Windows loads.
Some of it will do it automatically, some won't. Make sure it all does, mostly in case your power goes out.
That's it! Trust me, it's easy. Let me know if you have any tweaks to make it work even better.