Linux Audio Players, Tested and Graded
In which our Linux guru falls in love with a Microsoft app (!) and goes searching for an Open Source equivalent. Will he find it?Matthew Newton, PC World
Matthew Newton is PC World's QA engineer and unofficial Linux guru. If you're new to Linux and are feeling a bit lost in one way or another, drop him a line and let him know what's vexing you. Or, speak Freely in the comments section below!
One longstanding Unix tradition is best summed up thus: "Write programs that do one thing and do it well. Write programs to work together." On a Linux machine, this philosophy is most clearly visible from the command line, where Unix hackers continue to provide simple, flexible tools that talk to one another and don't have the huge overhead of a graphical user interface.
The "discrete tools for discrete tasks" concept does not always translate well to the world of GUIs. Most end users, raised on Windows and Mac interfaces, are accustomed to monolithic, everything-but-the-kitchen-sink tools. In many cases, this makes perfect sense: Why should you need separate programs for receiving e-mail, sending e-mail, and filtering e-mail? The answer is, you shouldn't, and Mozilla's Thunderbird (for instance) does a great job at handling all your e-mail related tasks.
I use my main Linux desktop for a lot of things, but music-related activities are key. For quite some time now, I've been very pleased with some tools that, in old-school Unix fashion, focus on specific tasks, and do them very well: Muine for playing music in my digital collection, Streamtuner and XMMS for listening to Internet radio, Sound Juicer for ripping CDs, Ex Falso for editing tags in my music files, and Serpentine for burning CDs. All of these Gnome apps are more or less first-rate. They get the job done, and do it well.
But over the holidays, while visiting my family back home, I encountered Windows Media Player 11. I was surprised to discover not only that I really liked its all-in-one approach, but that Microsoft had crafted an interface that made all the pieces fit together naturally. (Readers who chastise me for "constantly bashing" Microsoft, please take note: I just praised the UI in one of its flagship apps.) Many of my friends have found similar nirvana with Apple's iTunes. I began to wonder if there were an all-in-one music application for Linux that I could love.
To find out, I put the following integrated music apps through their paces on a machine running Ubuntu 6.10: Rhythmbox, Banshee, Listen, Amarok, and Exaile. (I started with Rhythmbox because it's Gnome's official music player, and then I worked my way through the rest, saving Amarok and Exaile for the end since the latter is a clone of the former.)
I've given each program a letter grade in each of five areas:
Anything else is gravy for me, and that includes the app's ability to decipher the scrambled files and folders that inhabit iPods. (My 20GB iRiver H120 acts as a standard USB mass-storage device, with all files stored in human-readable files and folders; I tend to just use the Nautilus file manager to move tunes back and forth.) I will note iPod support as I reveal the marks for each program, and I'll also mention any extra pluses or minuses that affect each player's final grade.
Rhythmbox and Banshee
Rhythmbox
Rhythmbox's boxes will look especially familiar to iTunes users.Rhythmbox is the official music manager for the Gnome desktop. Like all the Gnome apps here, it uses the GStreamer framework for playback, so it can play just about any file you toss at it. At first I worked with Rhythmbox version 0.9.6, the version built into Ubuntu's Edgy Eft release.
Rhythmbox allows for plug-ins, and there are a few good ones: a lyrics fetcher, an album-art fetcher, DAAP sharing (translation: the ability to share music with iTunes users on the local network), and, new in version 0.9.7, an interface to the Magnatune music store. (What Magnatune lacks in inventory--that is, everything you've ever heard of--it makes up for by being DRM-free.)
Rhythmbox also has great iPod support: A colleague of mine was truly impressed when Rhythmbox on my laptop was able to talk to his Mac-formatted iPod--a device unreadable by iTunes on Windows. So I'll award some extra credit here and give Rhythmbox an all-around grade of B.
Banshee
Banshee puts CD burning front and center (well, okay, top and right) in the interface.Banshee aims to outdo Rhythmbox. At one point in time, the two applications were virtually indistinguishable, but Banshee is evolving much faster than Rhythmbox these days and now has a look all its own. Banshee is written in Mono, and is thus a favorite of the Novell/SUSE crowd. I began my testing with version 0.11.1.
The bad news about Banshee: Every version I've ever tried has been as buggy as heck. Banshee freezes very, very frequently. When it does, it refuses to start again unless I delete its internal database file and re-import my music. Importing music brings the program to a crawl, and I have never been able to import my entire music collection (about 40 gigs) successfully; Banshee freezes somewhere along the way every time. I know there are Banshee users out there who don't experience these problems--could it be that Ubuntu's Mono support is not up to snuff?
On the other hand, Banshee talks to iPods. Via plug-ins, it can fetch album art, let you share your music via DAAP, make recommendations about music you might like, and automatically download podcasts. A "Smart Playlists" plug-in lets you define playlists such as "all songs by the Beatles, before 1968, less than 2 minutes long."
So, as with Rhythmbox, a little extra credit pushes Banshee to a final grade of B-. But I have to add the caveat that if the application crashes with your library as often as it does with mine, it takes itself out of the running entirely.
Listen, Amarok, and Exaile
Listen
I want to rearrange Listen's elements in this screen shot and send it back to the developers for implementation. What a mess!Listen is a freelance effort out of France. I started testing with version 0.4.3 (the latest Ubuntu package) but found the Internet radio support in that version completely broken. I compiled and installed version 0.5 beta 1 to complete my evaluation.
Listen can speak to iPods, downloads album art, and has strong integration with Wikipedia and Last.fm. If not for two issues, I'd be a full-time Listen user. First, the lack of ripping functionality means this isn't yet the all-in-one solution I crave.
Second, the user interface is a very odd beast indeed. The 'Sources' bar in the middle of the Listen window is in exactly the wrong place and takes up too much space. (Shouldn't it be a bar of tabs or something?) The window itself has a minimum width sufficient for two lanes of traffic. If Listen learned how to deal with shiny silver discs and got some love from someone who understands good UI design, it would be stellar. But for now, it gets an overall grade of C+.
Amarok
Amarok is beautiful, speedy--and best used with KDE.Amarok is the only KDE app I tested. There are two reasons for this: One, I'm a Gnome user, and prefer Gnome apps, mainly for aesthetic reasons. Two, not as many KDE programs are competing in this arena, probably because Amarok so clearly reigns supreme. This is an amazing piece of Free Software. I tested version 1.4.3.
Amarok also pulls down album art, fetches lyrics, offers Last.fm integration, and speaks to iPods. It feels very well thought-out--the 'Remove Duplicate & Dead Entries' command for playlists should be a standard feature in apps like this--but it also suffers from the standard KDE tendency to stuff too many widgets into windows, and too many options into dialog boxes. Overall, Amarok rates a hard-earned B+.
Exaile
Exaile: A lightweight Amarok clone in Gnome clothing.The coders behind Exaile are open about their goal: "Exaile is a media player aiming to be similar to KDE's Amarok," they tell us. But Exaile is built atop the GTK libraries, so it looks and feels like a Gnome app. It's not a full-fledged Amarok clone yet, but it's off to a good start. I worked with version 0.2.6 of Exaile.
Exaile sports Wikipedia and Last.fm integration, and it will download album art, lyrics, and even guitar tablature. It may well become Gnome's answer to Amarok, but it still feels like a work in progress. Currently Exaile rates a C-, but it could easily find itself right up there with Amarok, in close reach of an A, if it gets the development attention it deserves.
The Bottom Line
KDE users have it easy: Amarok is slick enough to crow about in a room full of iTunes or Windows Media Player users. On a Gnome desktop, however, burning and ripping with Amarok seems problematic, and then there's the issue of the app looking a little bit out of place. Of course, our friends who use iTunes or Windows Media Player 11 on a Windows XP machine have the same problem: iTunes looks like a Macintosh program, and WMP has a decidedly Vista-ish look to it.
I'll take another look at burning and ripping with Amarok soon, and I'll keep an eye on the Gnome apps. Rhythmbox is known for a relatively slow pace of development, so my hopes that it will come into its own in 2007 may be a bit premature. Banshee is farther along, but I can't get it working reliably at this point. (Anyone have any tips for me?)
Listen will kick butt someday when it can rip and burn, and when it has had a bit of an interface overhaul. And Exaile is being built true to Amarok's fine blueprints, so depending on how quickly it matures, it could find a permanent place on my desktop this year. But for the moment, I'm sticking with the suite of tools I listed at the beginning of this column. Sometimes, individual tools that meet specific needs still work best. Have you found a better solution? Speak Freely in the comments section!
No Podcast? No Problem! (An Audio Tip)
Robert Altman's 2006 cinematic adaptation of A Prairie Home Companion turned me into a Garrison Keillor fan, and I decided to start listening to the venerable weekly radio broadcast.
The problem: The show airs on Saturday afternoons, when I usually have far better things to do than sit around the house listening to the radio. Fortunately, the Prairie Home Companion Web site offers an archive that delivers old broadcasts as RealAudio streams. But that's convenient only if you're connected to the Net. What about slapping this week's show onto your iPod and listening to it on the go?
American Public Media says no, it can't let you do that: "The reason we cannot offer the whole show up for podcast is that we feature many different bands and musicians on our show. As such, their intellectual property is being broadcast to the listening audiences. We would have to get each artist's permission, not only to distribute their music in this way, but they would also have to be comfortable with the fact that it could be shared easily."
American Public Media's stance doesn't make any sense, since the audio streams it provides are easy enough to capture as files. Sure, RealPlayer has no option to save a stream to a file for later playback, but as a Linux user I have other options. Which means that it really is possible for me to enjoy "Tishomingo Blues" and the News From Lake Wobegon as I cruise along in a BART train under San Francisco Bay.
In this case, MPlayer comes to my rescue. This multimedia playback engine is available under pretty much any flavor of Linux; I installed it on my Ubuntu box with a simple sudo apt-get install mplayer. To create a Prairie podcast, first I use my Web browser to navigate the archives, arriving at the page for a particular show. Next I right-click the 'Try this one' link and select Copy Link Location. Then I open a command-line terminal and enter the following magic incantation, replacing URL with the link I have copied to the clipboard, and FILENAME with a file name ending in .wav ("PHC.wav" works just fine):
mplayer -playlist URL -ao pcm:file=FILENAME -vc null -vo null
When you enter this command, you'll see a lot of strange communication between your PC and the server scroll by, and then MPlayer will start capturing the stream. (You won't hear anything.) The stream comes down in real time, of course, so it will take 2 hours to capture the 2-hour show. Once that's done, you'll have an enormous .wav file on your hands; it's a good idea to convert that file to a much smaller MP3 file before taking it on the road. To do so, first check your package manager to ensure that Lame is installed, and then use this command:
lame filename.wav filename.mp3
