Convert your iPhone/iPod Touch Or Any WiFi Enabled gadget to foobar2000 Remote
By on October 10th, 2010

Background:

I have a WiFi network setup which covers my apartment. I’m a music buff as well, and music is almost always playing while I’m working/browsing.

Now more often than not, I would be generally working on my office laptop – testing/ coding/ documentation / something of that sort and my music collection is on my personal laptop. I’ve often wanted to control the music – skip it/ pause / jump to specific songs, and started about searching the best way to do so.

The most obvious solution was to use the Remote app for the iPhone/ iPod Touch. There was a slight problem with this. Remote app uses Bonjour, and that means I’d have to use iTunes as my media player. For the record – I hate iTunes. It’s a POS application which I’m forced to use for syncing my music and I try to use it sparingly. I love foobar2000. I started out searching for alternatives to Remote, and found this neat little plugin – foo_touchremote, but it was rather unpredictable and would crash foobar often. Another big problem was that I’d have to re authenticate foo_touchremote everytime I leave & rejoin my WiFi network – which is atleast 2-3 times a day. Very annoying.

That plus there would a dependency on the iPhone/ iPod Touch on the rare occasion that I’d have to give up my iPhone, so I started searching for more “open” (*snark*) solutions.

The thing which came to my mind when thinking about an “open” solution was use to an http server (plugin? ) so that any device with a semi-capable browser could handle this. After searching for a bit, I came across HTTP Control Plugin [foo_httpcontrol] which would be the foundation.

Going about doing this

So here’s how you set it up. Download the archive, and move foo_httpcontrol.dll file to your Program Files\\foobar2000\\components directory

Aqbmn.png

Copy the foo_httpcontrol_data directory to %appdata%\\foobar2000 directory ( %appdata% refers to Users\\AppData\\Roaming folder).

ufGqo.png

Grab any of the templates. Save the template folder under %appdata%\\foobar2000\\foo_httpcontrol_data folder.

3MKTX.png

Next, launch foobar2000. Goto File – > Preferences Menu.

HAThY.png

Click on HTTP Control to bring up the subpage.

OlSjx.png

Now, the screen maybe confusing but we really need to focus on “Listen on:” area, more than anything

OT5jm.png

Listen on allows you to define the IP address on which the server should run ( read: your computer). Now, before you rush off to enter your system IP address, remember couple of things:

  • The WiFi network is bound to be DHCP based, meaning the IP address is assigned automatically by the router
  • If you have multiple devices, the IP address is likely to changed. Meaning, that everytime the IP changes, you might have to stop and start the service.

You have 2 possible solutions to overcome this:

  • Let your router remain DHCP configured, but put up a static IP for your system. This way, your IP will never be assigned to any other devices
  • Some routers can reserve IP address and bind them to the MAC id. This way, when the system connects to the WiFi network, the router checks the MAC id and if a reservation is available, then assigns the IP. This is what I had done.

tBWlE.png

I’d recommend that you use the router’s DHCP reservation feature, else fallback to static IP assignment.

Right, back to foobar, enter the IP of your system and a random port. Put a check mark against “Start server” and click on Apply. Your server is ready.

aBpg9.png

Click on the open link to open your browser

XaBzG.png

So the basics are set. Use any device and point to your IP address. If you don;t want to type in the full IP address:port combination, copy that, and use a URL shortener like j.mp or bit.ly and set your custom name, and use that URL to control foobar2000.

As a bonus, if you have an iPhone/ iPod Touch, open the URL in Safari and use the “Add to Home screen” feature and make it act as an app as well.

4Eeks.png dWQGq.png Jq4qd.png

This is how it looks with the kevo template on my iPhone

qcsDb.png

If you’re paranoid about security, foo_httpcontrol allows you to restrict access to only specific IPs or even the standard username / password scheme

qLodF.png

At the bottom, of the screen you will see some advanced settings. – it’s recommended that you leave them as how it was configured.

cMyY6.png

The concept is pretty simple, and with this approach, you can convert any Wifi enabled device into your own music remote control.

Tags: , , , , ,
Author: Sathya Bhat Google Profile for Sathya Bhat
Sathyajith aka "Sathya" or "cpg" loves working on computers, and actively participates in many online communities. Sathya is a Community Moderator on Super User, a collaboratively maintained Q&A site which is part of the Stack Exchange network. Sathya also contributes to and is a Super Moderator at Chip India Forums. While not writing SQL queries or coding in PL/SQL, Sathya is also a gamer, a Linux enthusiast, and maintains a blog on Linux & OpenSource. You can reach Sathya on twitter.

Sathya Bhat has written and can be contacted at sathya@techie-buzz.com.
 
Copyright 2006-2012 Techie Buzz. All Rights Reserved. Our content may not be reproduced on other websites. Content Delivery by MaxCDN