« Reading List: Reinventing Gravity | Main | Right Here in Switzerland! »

Monday, April 20, 2009

Transferring MP3 files to an iPhone from Linux (and other operating systems)

I purchased an iPhone 3G (the only model offered for sale in Switzerland) at the end of September last year, and notwithstanding the usual speed bumps and irritations, I've been very satisfied with it so far. The first thing I did was ditch the auto-ejecting earbuds supplied with the phone for the Etymotic hf2 headset, which includes a compatible microphone and earphones which do not trigger pain nerves in the ear canal. (This product is expensive, but I recommend it with the following caveat: never succumb to the temptation to haul the iPhone out of your pocket by the headphone cable. The wire is fragile, and doing so will eventually lead to loss of continuity in one of the audio or control channels. You do not want to write off such an expensive headset and have to buy a replacement as I did—you have been warned.)

The other major irritation I had with the iPhone was the inability to upload MP3 files I'd downloaded for podcasts and other audio programmes without rebooting my computer into a legacy operating system and running iTunes. With the iPod Nano I previously carried on my daily walks, I could use gtkpod to upload the audio files directly from Linux and otherwise manage the audio content of the iPod. The iPhone, however, is locked and cannot be accessed by non-Apple applications. (Yes, I am aware of the option of breaking Apple's lockdown of the iPhone, but I do not engage in such endeavours: when I buy a product, I agree to the licence which governs it, and besides I have better things to do with my time than engage in a technological arms race with a well-funded company.) This meant that whenever I downloaded an MP3 file which I wanted to listen to, I had to boot my machine into Windows XP simply to transfer it to the iPhone (or, as I often did, unwilling to so abuse my faithful laptop, just copied it to the venerable iPod Nano and carry it along with me [but then, you don't have the cool feature of being able to answer an incoming call without juggling gizmos and asking the caller to hold on while you push buttons and fiddle with cables]).

I don't write about gripes here, but rather solutions, and here's one I wished I'd discovered earlier. There is an iPhone application called Air Sharing which presently sells for the princely sum of US$4.99 which, when installed on your iPhone and launched, looks for a WiFi access point and registers itself with an HTTP port address of 8080 (you can configure this). You can then connect to its built-in HTTP server, which allows you to manage files stored on the iPhone, including uploading files from your computer. And the key point is that you can do this from any system with a Web browser—you don't need a legacy proprietary system which runs iTunes. You can upload files in a variety of formats, but what matters to me is MP3: audio files are stored and can be played by tapping their names in the Air Sharing application window. You then get a QuickTime media player window which allows the usual control over playing the audio. I'm not sure what happens if an incoming call occurs whilst playing an uploaded MP3 file—that hasn't yet happened; if I press the headset button, the MP3 file pauses and the active iPod file resumes, so I'll have to see how this sorts out in the case of an incoming call.

As someone who downloads and listens to a lot of podcasts, and wishes to carry and juggle as few gizmos as possible, this is about the best five bucks I've ever spent. The application does much more than I've described here, but it's more than worth it to me to be able to upload audio files to the iPhone without disrupting my workflow or sullying my development machine with proprietary software from legacy vendors.

Posted at April 20, 2009 22:38