Sunday, October 16, 2005

The Apple AirTunes vision -- not really ready for primetime

[This post strains the blog metaphor. It's partly chronological, partly revised. In summary I was initially very unimpressed with the Airport Express and AirTunes -- but I'm beating it into submission.]

Apple's AirTunes vision sounds good -- on the web page:
Apple - AirPort Express

AirTunes Unleashes Your Music

... AirPort Express with AirTunes brings your iTunes music in your Mac or PC into your living room — or wherever in your home you have a stereo or a set of powered speakers.(1) All you have to do is connect your sound system to the audio port on the AirPort Express Base Station using an audio cable (included in the optional AirPort Express Stereo Connection Kit) and AirTunes lets you play your iTunes music through your stereo or powered speakers — wirelessly. iTunes automatically detects the connection of your remote speakers, so you just have to select them in the popup list that appears at the bottom of the iTunes window and click play.(2)

Enjoy your playlists, set iTunes to shuffle through your entire library or repeat your favorite songs over and over again — however you like to enjoy your music on iTunes, you can now enjoy it that way through your stereo speakers, wherever they’re located in your house.

Buy more than one AirPort Express Base Station and connect one to every stereo or set of powered speakers in your house — one to your stereo in your living room and another to a pair of powered speakers in your kitchen, for example. Its small size and affordability make it perfect for having more than one. Imagine being able to play your iTunes music on whichever speakers in your house you prefer.
Ahem. Ok, now back to reality. iTunes will stream to one AirPort Express Base Station (AExpBS). So you might have 3 of 'em attached to powered speakers, but only one will play at a time. So much for music throughout the house!

In any case, it doesn't work all that well. Even when I stream to the AExpBS from a powerful server I get occasional pauses in the music (even with a large buffer set in iTunes -- I think the problem is that the AExpBS needs a much larger internal buffer - but see below, later I fixed this). The biggest problem, however, is the lack of remote control for iTunes (see below for workarounds).

The situation Apple ought to be encouraging is a media server holding music and Apple devices controlling that. For example, music on a G5 iMac, control via an iBook. One LAN with multiple Apple wireless devices. Well, that's what I tried:
  1. G5 iMac with iTunes running in a Tiger login session, connected to AirPort Extreme Base station by 10 Mbps wired ethernet. iTunes is sharing Library.
  2. AirPort Extreme base station configured for 802.11 b networking.
  3. AirPort Express Base Station attached in bridge mode to the wireless LAN, with speakers.
  4. G3 iBook with 10.3.9 connected via 802.11b to WLAN, with iTunes running locally. iBook streams to the AirPort Express Base Station.
So what did I discover?
  1. Well, the above seemed pretty obvious to me, but when I wrote it down it occurred to me that very few people are going to be geeky enough to configure this.
  2. The fundamental setup is stupid. The iBook isn't acting as a remote, it's actually streaming the music. Way too much work for something that runs on a battery. The iBook should be controlling the application running on the iMac. [1]
  3. There were (initially) glitches and pauses in the music. Their are multiple bottlenecks in the situation I could improve (switch my ancient 10Mbps hub for a 10/100), but I suspect the G3 iBook is a key problem -- especially since I use WPA on my LAN. The G3 just doesn't have the firepower to do all the encryption and streaming -- especially since it's running multiple simultaneous users. [2] Actually, the problem persisted even after I eliminated the G3. The Airport Express really needs a large internal cache; which, of course, would make it impossible to synchronize output between multiple base stations (sometimes analog is just better!). Additionally, I've been told that the Airport Express requires an uncompressed audio stream -- this vastly increases the burden on even a perfect network. In reality, there are a lot of moving parts on a wireless LAN with two interacting base stations, not to mention my neighbors' WLANs.
I'll figure something out. I tried switching to running iTunes on an XP server and using Microsoft's pretty decent 'Remote Desktop Connection' client to connect from the iBook to the XP -- but RDC let me down. iTunes/Windows would stop responding when accessed via RDC.

[1] There's a neat 3rd party AppleScript application that does something like this, but it doesn't support use of remote speakers! Also, it's very early in development. This needs to be an Apple product. I also tried using 'Chicken of the VNC' to connect to the iMac's embedded Apple Remote Desktop Client, but 'Chicken' blew up. Might not have liked the large display area.

[2] Ok, so this is cruel. Bottom line though is that the media server should be streaming, the iBook should be a remote. Apple needs to provide the thin client solution I've been whining about for years.

Update 10/15/05
  • Microsoft Remote Desktop Connection didn't work as well as I'd expected! It was fine when I used it with a new invocation of iTunes, but I couldn't reconnect to a running version.
  • I went looking for TuneConnect so I could ask the author about enabling control of remote speakers. That, however, led me to NetTunes. This $20 shareware app seems more like what I need -- remote control of iTunes. So see my NetTunes review. [I registered NetTunes -- but it turned out to be incompatible with both Fast User Switching and with my OS X photo images screen saver. So it bit the dust too.]
  • This stuff is really not ready. The Jobs reality distortion field has been working overtime when it comes to AirTunes.
Update 10/16/05
  • Savvy users, I'm told, are using Mac minis as headless media servers, with remote control via NetTunes. iTunes is quite happy to work with a shortcut in place of the standard iTunes data folder, so one can in theory have iTunes on the mini and iTunes elsewhere manipulate the same data set. God knows what happens if both try to edit the db ath the same time!
Update 10/18/05
  • Slimdevices Squeezebox2 is looking better all the time. I'd need eed to get rid of that pesky DRM of course. Why can't Apple manage something like this? They have a very interesting discussion on the impact of streaming audio on wireless LANs:
    What kind of impact will Squeezebox2 have on my wireless network?

    While streaming music, Squeezebox2 will use some network bandwidth. The amount of bandwidth depends on the bitrate of the audio file. MP3 files use up to 320k bits per second, AIFF, WAV, AAC and other formats may use up to 1.5M bits per second, but since Squeezebox2 supports FLAC, this can be reduced to around 800k bits per second on the fly. A solid 802.11g network can generally support around 15-20M bits per second of data, even though it's rated for 54M bits per second. This means that you can support more than one Squeezebox2 on an 802.11g network, but the number depends on the audio data rate and how busy the network is otherwise.

    I've switched the WLAN from mixed 802.11 b/g to 802.11b and simplifed parts of my network. Airport Express is skipping less. I've seen this before -- 802.11g smells more and more like a failed standard. Now we all wait for 802.11n.
Update 10/19/05
  • Things are looking better. My network reconfiguration (moved iTunes files off server to iMac, switched to 802.11b/locked, reset to default channel configuration) seems to have eliminated the skipping problem. Esoterica though, most won't have a chance with this.
  • NetTunes often works even with Fast User switching. It's not supposed to and it's very fragile, but if I connect, make my changes, don't cause any windows to open, and disconnect I can sometimes escape alive. In fact since it's incompatible with my screen saver, it works better this way. NetTunes is really for remote control of a headless Mac Mini.
  • TuneConnect is back up front again. It can't control speaker selection, so I have to remember to leave iTunes directing output to the Airport speakers - but otherwise it's a decent little remote. It DOES work fine with fast user switching on the media server, I've even had several clients connected simultaneously. Main annoyance is that it's designed to work with a string matched set of tunes -- not a playlist. Sigh. I'm hoping the developer will fix this.
Update 2/18/06:

TuneConnect failed. Fast User Switching breaks remote AppleScript. Now I'm trying PatioTunes. It does look like the web server method is the only one that really works. I do love embedded web servers.

Update 8/10/2008:

I ultimately gave up around 5/06. Now the iPhone has an iTunes remote control app ....


Anonymous said...

I've been on a similar odyssey, trying a Squeezebox at one point, then dumping it in favor of an AirPort Express when I saw how much SlimServer was sapping my system resources.

The real problem is that iTunes speaker selection isn't AppleScriptable -- if it were, then everything else would fall into place. As it stand, I'm currently emplying a cobbled-together combination of Salling Clicker, iDisco, AirFoil, Chicken of the VNC, and two different iTunes remotes, Remote Remote (by Brian Garten) and iTunes Remote (by Jon Beebe). Really, we just need to hammer Apple about making the speakers scriptable. Should that happen, an enterprising developer would have little trouble cooking up the full-featured remote control program we all so desperately need.

JGF said...

Wow, you're really persistent! I felt PatioTunes was the best web based/script solution so far. The web advantage is the fast user switching support.

I've been unimpressed with RF controls so far (Griffin). I think the power-drain of 802.11b, the range and interference issues of traditional RF and bluetooth, the bandwidth issues of multiple streams in a condo/appt environment all conspire to make this a nastier problem than it appears - from the remote to the server.

Maybe we need to wait for new technologies?

What works best for me now is an old iPod with my music next to my stereo, and non-powered old fashioned speakers in two rooms.

Anonymous said...

I got my airport express a few weeks ago solely for the purpose of streaming to remote speakers. Moreover, I spend most of my time in iTunes listening to internet radio stations (generally of the Public Radio sort). A couple of those stations had horrible pauses, stutters, drop-outs every 45 seconds or so. The drop-out would last a couple seconds. Horribly annoying to say the least (not to mention the lack of support for sending other audio such as iDVD or even the audio I've bought from ITMS and have to play within iTunes -- though I suppose there's insurmountable synchronization issues involved with either of those cases; sorry for the digression.

Anyway, based on your posting and a couple others I found right afterwards, I was about to switch my LinkSys access point to use 802.11B only, even though I have machines here with the faster -G cards in them. Well, prior to doing that, I switched the channel it was using (was something like channel 6, now on channel 9) and for now, I'm no longer getting the pauses in the audio stream (and it was doing it consistently for the same stream up to the point I switched).

So there's another tip that might work for others. Won't know for awhile how well it will ultimately work for me, but is now.