08.22.07

On iTunes

Posted in Appleology, Essay Week, Rants, Writing at 7:51 am

Essay Week 2007 runs from August 20 to August 24, 2007. Each day I’ll present a short essay on a topic of concern to me; as you may already have noticed, though, I have the option of including a pre-essay post giving updates on ongoing life events if necessary. Some of the elements in these essays may be controversial; I hope, however, that most will be well-regarded and at least read with an open mind. If you have anything to say about them, please feel free to leave a comment; I read them all, even if I may not respond due to time or other concerns. Shifting focus a little bit, today’s essay concerns the perils of iTunes and having a little too much of the music in your soul, or hard drive.

I have a pretty big iTunes library, and unfortunately for me, it gets stashed on an external drive (but it’s FireWire, so that’s a help). More unfortunately, I use a pretty extensive set of Smart Playlists to get everything organized for use on my iPod. What this means is that, in general, iTunes is devastatingly slow to load and use. It plays with no problems, and syncing is nice too, but it’s a pain in the ass when I’m ripping new songs or adjusting the SPLs to clear out stuff I don’t care to hear.

A few months ago I detailed my method of iTunes organization. You can still read it over there. I heavily emphasized the use of Smart Playlists, and in all of my examples I had the “Live Updating” flag checked. I’ve since discovered that it’s this flag which is causing the massive slowdown; at each play or skip, many different playlists need to be checked and possibly updated. There are a bunch of ’static’ SPLs (such as the Defaults and Star Lists) that can effectively be left alone, and Live Updating turned off for those ones. (You’ll need to manually force iTunes to update these, by opening the SPL’s Edit window and just clicking OK. I would assume that iTunes would update playlists on open and close, or that there would be an “Update Playlist” option on SPLs thus set, but no.) By Live Updating as few SPLs as possible, you can greatly increase the speed at which iTunes performs. In my case, it’s not much– we’re still talking a pretty big number of SPLs that need to be current– but it’s better than it was.

My bigger problem with the situation is that iTunes uses an absolutely atrocious query system. I can certainly sympathize with the concept of keeping the system relatively simple for non-technical users, but would it really be that hard to incorporate a true SQL-based engine for advanced users? I know for a fact that I could accomplish my complex SPL setups with single-line SQL queries as opposed to the gargantuan, elephantine, moves-like-a-fatigued-sloth-on-sedatives SPL system. The problem is in retaining compatibility with the iPod. The iPod, while an impressive and compact piece of technology, is by no means powerful. It does not have much in the way of beefy cycle-power or RAM, and as a result it has problems handling even some of the current features of iTunes (like folders and interdependent SPLs). That’s fine. I don’t want to manage my music on the iPod; that’s what the computer is for. I want the iPod to get a list of playlists/podcasts, sync the required files, and then be on its merry little way. The computer is the one who has to do the heavy lifting.

It’s not like there aren’t solutions out there. SQLite is a public-domain, currently-maintained database engine written in C. How hard could it really be to use this instead of the XML- and binary-based iTunes Library engine? I bet it would be a hell of a lot faster, too– by virtue of deferring writes and maintaining an active cache. As it stands, iTunes 7 is a horrible piece of software once you get beyond a certain number of files.

Actually, in general, iTunes 7 is a pretty bad piece of software for the end-user. Recently, I’ve run upon an extremely cryptic error message while trying to sync my iPod. Despite the “I’m a PC/I’m a Mac” ads to the contrary (which I knew, of course, were total BS but found amusing for the delivery), the Mac does a very, VERY good job of keeping the user in the dark as to what goes wrong when something does go wrong. “Error -54″ is not helpful; “There was a problem syncing file xyz.mp4, would you like to see it in the Finder?” is helpful. A cursory search led me to believe that the only way to clear the error permanently was to wipe my Library file and re-add each track one by one; I kinda can’t afford to do that, as it took me the better part of four months just to properly rate the 20,000 active files in my library. This does little to dissuade me from using the iPod, as I’m pretty sure this is just a temporary glitch due to the most recent iTunes update (the information I got was from the Apple support forums and was posted by several dozen users, so I’m reasonably sure a fix is forthcoming), but it is irritating. And most of the people who know me know that, in my vocabulary, ‘irritating’ is synonymous with ‘may induce chainsaw-related injuries upon the object causing the irritation’.

Going back to huge libraries, that may be the reluctance that Apple is showing here. People with massive and all-encompassing libraries like myself are, at the moment, in the lunatic-fringe minority. (Actually, if you want to get painfully specific, people with big libraries are actually fairly common; they just mostly use Windows and/or other file-library tools. Mac users with huge libraries are the real, “dozen and a half wackos” minority.) What isn’t immediately obvious is that the SQL concept is scalable; the speed increase for large-scale users should be evident, albeit on a lesser scale, to low-population users as well. By streamlining the process of managing SPLs and metadata, the whole system’s performance increases by orders of magnitude. That’s something Apple is going to have to deal with as the iTMS gains in popularity and people start purchasing more and more music and movies.

Speaking of movies, I wanted to talk a little bit about how iTunes handles video files. As most of you have known, I have my Mac mini attached to my HDTV and use that as my media-center machine. Moreover, iTunes happens to be where my entire Babylon 5 collection lives. Playing those files is, to be polite, a freaking nightmare. Playback is slow and choppy– even over a FireWire connection!– and startup and pause/stop times are on the order of seconds. We all know why this is: iTunes was not meant to be and should never have been a video player. Manager, yes (maybe); player, no. When the jump to video was made, Apple should have made iTunes a micro-suite: the main app for music and metadata/launching, and a companion app for video playback. Hell, on OS X, that application already exists: iDVD! Updating that to include the iTMS/FairPlay decryption should have been Apple’s course of action. It’s pretty damn counterintuitive on a Mac to open up the music player to watch a video. The integration of video into iTunes was a mistake that should have been caught the second someone noticed that it ran counter to the ’simplicity’ goal of the rest of Apple’s design.

This rant is not without a certain amount of optimism. iLife ‘08, announced a couple of weeks back, showed a total revamp of iMovie; this indicates to me that Apple is not as averse to making sweeping, drastic changes in their software products as many people might think. I firmly believe that Leopard will include a more robust and completely rewritten iTunes; if not, then the odds are good it will come as a “just one more thing”-style release shortly after the new version’s release. (October can’t get here soon enough, in my opinion; mostly for the MacBook, as my mini doesn’t see enough use to justify a new OS unless there’s some must-have fixes.) Or, what might be a better idea would be to dump iTunes completely and work more with Front Row; expanding that from just a frontend/alternate interface to iTunes into a full-featured media manager.

Ultimately, we’ve been running on the same underlying version of iTunes for close to six years now, and it’s about time for a re-do. After six years, any software project will become overly bloated and difficult to maintain or use; more than that, requirements have shifted so greatly that iTunes no longer really resembles what it once was. My admiration of Apple is still strong, but right now the pleasantness is starting to wear thin.

1 Comment »

  1. Ramen Junkie said,

    08.22.07 at 8:30 am

    I used to keep all my music in itunes. Due to the clutter this created I’ve since moved to just keeping music I might actually listen to in it.

    Rough Description - I have nearly 9,000 files in my MP3s folder in 39 gigs of space. This may include a few pieces of artwork and playlists I’ve picked up but a rough guess would be at least 8,000 actual MP3s. This does not include rips of 90% of my CDs since I purged all of those years ago due to space constraints. I’ve been considering doing a re rip of them all though.

RSS feed for comments on this post · TrackBack URL

Leave a Comment