« Anti-abortion group sends illegal spam | Main | Microsoft to stop competing on the merits of its technology »

Remotely streaming your iTunes library

Update: This is a nice summary of remote iTunes streaming.

I'm at a tea house in Seattle right now listening to music from my home iTunes collection. Setting this up was fairly simple. Performance is impressive.

Thanks MacOSXHints:

The At Home instructions below are correct:

    * Turn on 'Remote Login' in Preferences -> Sharing
    * Make sure OS X firewall has port 22 open (so you can SSH to this machine) in Sharing prefs
    * I also opened port 3689 so I could share with the other machines at home
    * On your internet router, make sure ports 22 and 3689 are forwarded to this computer's local IP address (I have a Netgear router, it was easy to set up via their web interface)
    * Launch iTunes. Turn on iTunes sharing (and make sure you have some tunes to share!)
    * Go to your favorite remote location!

The remote location instructions needed tweaking for my Powerbook:

#  Install Rendezvous Beacon (download here) and launch.
# Create a new beacon in this fashion:
Beacon Enabled: (checked)
Service Name: (descriptive name)
Service Type: _daap._tcp.
Port Number: 3689
Text Record: (empty)
Enable Host Proxy: (checked)
Host Name: localhost
IP Address: 127.0.0.1
# Save the beacon and make sure it's enabled!
# Now you need to set up a SSH tunnel - open a terminal window
I used slightly different command line

ssh -L 3689:homeserver-ip-address:3689 -l username -N homeserver-ip-address

If you don't have a static IP at home - check out dyndns.org. Many routers have advanced settings to report your dynamic IP address at home to this service on a regular basis.
# Leave the Terminal window open. If you close it, the SSH tunnel will turn off.
# Launch iTunes. Make sure you have 'Look for shared music' turned on.
# Click on the shared name in the left column. If it deselects immediately and does not connect, then I believe there is an authorization issue. If it just sits there and never connects, then I think there is a connection issue. Just a guess, but in my hours of troubleshooting that what I figured...
# If it's working, then your home music should show up in the main window.

I found some additional troubleshooting tips here.

The big question will be whether the Treo700 will be Rendezvous enabled and support an iTunes client! Apple's friends in the music industry may not like that.

If anyone has client-side iTunes instructions for Windows - please post them. At work, I use a Windows XP desktop and I'm sure many others have a similar set up.

Comments

Phil

I would think these instructions would work with no modification on a Windows setup running Cygwin.

Jwahar Bammi

Hmm... Phil: what would be the windows equivalent of Rendezvous Beacon? The port forwarding part is easy with wither cygwin/ssh or juts plain old Putty.

Did anyone come up with a procedure for Win desktop?

William

Try "SSH Tunnel Manager" for tunneling SSH connections on OSX. It's much quicker then using the command line and you don't have to leave a terminal window open.

ian

Since you're tunneling through ssh, is it really necessary to open 3689 on your router?

Patrik

The Windows (or any platform really) equivalent to Rendezvous Beacon would be RendezvousProxy: http://ileech.sourceforge.net/index.php?content=RendezvousProxy-Download

It's written in Java, free, and just as easy to setup as Rendezvous Beacon.

When you couple that with AppleRecords http://www.cdavies.org/applerecords.html you don't even have to install iTunes on the client to listen to the libraries, which sometimes the sysadmins won't let you...

Then another thing is if you'd change the ssh tunnel command to

ssh -g -L 3689:homeserver-ip-address:3689 -l username -N homeserver-ip-address

or even better

ssh -g -L 3689:homeserver-ip-address:3689 username@homeserver-ip-address

then everyone else on the network can connect and listen to your at home music too... :) Beware of the potential bandwidth requirements though...

Sandy McArthur

NoTTL: http://sandy.mcarthur.org/Code/NoTTL can help eliminate the SSH requirement which may be easier for some to setup.

Jeff

If you want to create an ssh tunnel on windows, you can use PuTTY. It is pretty easy to set up a tunnel with it. Just google for tunnel and putty and ssh

Brandon

You don't even need to create an SSH tunnel to do this. All you have to do is use your router's own port forwarding features, use an external port (the port that data would be sent to from the Internet) that's different from 3689 (for example use port 2000), and forward that port to 3689 on your LAN machine that's hosting all your music.

Now use RendezvousProxy/Beacon/whatever and set it up to go to Itunes on the port you made on your remote computer (i.e. up above port 2000)

tom

iTunes on Windows uses UDP, which can't be tunnelled through SSH, unfortunately. You'd need a more robust solution to avoid having this be mac-only.

Of course, you could still just open up all the relevant ports on your router and make your system available to everyone...

david roeske

can someone please send me a link with step by step instructions on how to do this from XP to XP for a non-expert!? thank you so much.

Nat

I just updated to Itunes 7.6.2 and this trick doesn't seem to work anymore :( Maybe it's a problem on my side. Anyone has it working with the latest Itunes ?

Josh

Nat: I'm having the same problems with 7.6.2 as well. If anybody knows how to fix this let us know!

Post a comment

Comments are moderated, and will not appear on this weblog until the author has approved them.

If you have a TypeKey or TypePad account, please Sign In.