Songbird is a cross-platform, Mozilla-based music player with high ambitions. The app is still undergoing heavy development, but it has come a long way since we looked at the 0.1 release in 2006. Songbird today can sing a pretty sweet tune, but to push its way into the big leagues, it needs to get over its own interface.
The latest release is 0.25, available for download for Linux, Windows, and Mac OS X. The project provides Linux builds for both 32-bit and 64-bit Intel architectures. Songbird uses GStreamer as its media back end on Linux, but VLC on Mac OS X and Windows, so make sure you have the proper dependencies preinstalled. In general, a Linux system that can run the latest Firefox can probably run Songbird as well.
If you are daring enough, you can also try a nightly build of Songbird, or grab the source code and compile it yourself. And you might find some new features in these more experimental versions of the application -- Songbird has yet to offer an "end user" release, and there are a lot of changes in the works prior to 0.3.
To get started quickly, just download the basic binary for your architecture. It comes as a gzipped archive that you can extract to any location in the filesystem and run. Change into the newly extracted Songbird directory and launch the app with ./Songbird &.
What you hear is what you get
Songbird and I got off on the wrong foot on first launch. The main window appeared and was immediately covered up by a file selection window asking me to choose a directory -- no explanation of what it was for. Luckily, canceling the window was no trouble and we were soon back on track.
You can have Songbird search your system for audio files and index everything it finds, or you can specify multiple individual folders for Songbird to watch. I designated my various music folders and was surprised at how quickly Songbird scanned and indexed their content -- much faster than Amarok or Rhythmbox on the exact same content.
Or at least that's how it seemed. The truth is, Songbird switched into the Library music browser pane well before it had finished its indexing. It seemed to load tracks in random order, and gave no feedback about whether it was finished. No progress bar indicated that indexing was still in progress, but every five minutes or so for the next two hours, a couple more artists would appear in the song browser. Only by comparing the totals in the Artist and Album columns to what I knew to be true could I tell when indexing was finished.
Playback quality itself was flawless; just what I would expect from a GStreamer-based player. Jumping to a random point in a track did not interrupt playback or cause an annoying screech. I tested MP3, Vorbis, AAC, FLAC, and WMA files, and all sounded great, loaded quickly, and had even ID3 tags, such as track number, recognized. I was disappointed that I could not get WAV files to play, but to be fair they are not advertised as supported. My understanding from the documentation is that Windows and OS X versions of Songbird can even play back encrypted iTunes Store purchases if iTunes is present on the computer, but I don't own any tracks with which to test that feature.
In spite of the playback quality, there are a lot of small hiccups that indicate the app is still unfinished. I noticed that Songbird failed to index the metadata from any of my FLAC files, although when I opened them manually via the File menu, they played fine and subsequently appeared in the Library. Once Songbird reached the end of a FLAC track that I had opened via File, it would play the next track in the folder -- but if you played the same track by double-clicking it in the Library browser, Songbird would not play the next track.
More alarming is that although the name of the current track is displayed in the faux-LCD "faceplate" at the top of the window, it is not highlighted in the browser. The dedicated jump-to-current-track button only seems to work when the current track is already onscreen, and the Copy to Device and Burn CD buttons do not appear to work at all.
Finally, when any track is playing, if you switch to another Artist or Album in the Library browser, playback stops with the end of the playing track -- regardless of the state of the Random and Repeat controls.
For people wondering whether Songbird is ready for duty as a daily music player, hangups like these make the answer no. Nevertheless, you can get a taste for some of Songbird's fancier features while you wait.
There's more music on the Web than on your hard drive
In addition to basic yet-another-jukebox functionality, Songbird has integrated Web browsing that it uses to serve up some intriguing music sources. At the simplest level, it can extract links to MP3 files and Shoutcast streams from pages. This allows Songbird to automatically queue up music from a wide variety of sites, including ones from static HTML, RSS-equipped blogs, search engines, and online stores.
The more complicated cases, like online stores, are usually designed to authorize and process payment through a traditional Web browser. Here Songbird works just like Firefox or any other Mozilla-derived browser -- the sole difference being that as soon as your purchase is made, Songbird downloads your tracks and they appear in your library instantly, ready to play. It is a few clicks quicker than using a separate browser and music player, but if you purchase a lot of music, the convenience will be worthwhile.
Any Web music files Songbird detects are automatically added to the Web Library list, where they are indexed but not downloaded. You can visit the Web Library just as you would a folder on your computer, download any of the listed files, or play them without downloading a copy to save locally. It's very convenient.
Current builds of Songbird come preloaded with sidebar links to more than 20 sites, ranging from commercial stores like Amazon.com to free resources like Creative Commons to independent music-oriented blogs. However, the groupings seem needlessly complex and arbitrary. The categories are Bookmarks, MP3 Blogs, Searches, Music Stores, Radio, Network Services, and Network Devices. All of the links are to Web pages; the content is treated identically. How does it help to put one independent music site (Ninjam) in the Network Services folder by itself, and another (Elbo.ws) in the Searches folder?
Installer and user interface gripes: party like it's 1998
One of the biggest problems with Songbird today is its interface. Earlier I mentioned that on first launch Songbird opened a file selection window without explaining what your selection would be used for. Was it just asking for a directory to scan for music files, or was it asking me to create a directory in which to house my music library? I have a large file library and, lacking explanation, I did not know whether Songbird was going to "manage" it for me by making a copy of every file it found. Duplicating your entire audio library may sound crazy to music lovers, but the same disk-draining maneuver is aggravatingly commonplace with photo management apps. A simple dialog box explaining the directory's purpose would have sufficed.
I canceled the file selection window and spent a few minutes browsing through the interface. Evidently the pushy window was there to prompt for a starting location from which to scan the system for music. Since I don't want my music player indexing interviews, podcasts, sound effects, and other miscellany, I skipped that option. Songbird did not give me the option of choosing the other built-in option, manually designating individual content directories.
Songbird can be extended through XUL add-ons, just as Firefox and Mozilla can. The installer starts out recommending a palette of extensions, but does not describe what any of them are for. Since installing extensions is a potential security risk, not telling the user what they are choosing is a Bad Thing.
Ever since Apple's iTunes hit it big, other audio players have mimicked its interface. But its popularity doesn't make it good. The left-most vertical column that Songbird dedicates to bookmarked Web sites and links to local and remote content is one such example. It is a narrow, non-scrollable vertical column, filled with horizontal text. Even moderately long list entries don't fit -- you have to abbreviate any links you add manually, and even some of the preselected bookmarks are too long.
With Mozilla technology at its disposal, Songbird should be using horizontal tabs to separate its content sources. Doing so would not only eliminate the skinny vertical column, but also eliminate the zig-zagging hierarchy of the main window's content panes. While the developers are at it, they could rearrange the app's buttons into a consistent layout. Some buttons toggle state (for example, Random mode), others perform an action (Burn CD, Jump to Current Track, or Back One Page in the Web browser), but they are scattered among four different locations on the window.
Another problem: the icons used on main playback buttons are wrong. The Fast Forward symbol skips to the next track; there is a different stock symbol for that button -- Songbird should use it. Same with the "back up to the beginning of the current track" button -- it uses the rewind symbol, which is also incorrect.
The built-in themes (or "feathers," as the Songbird menus describe them) cruelly sacrifice usability for style. They use fixed-size fonts and custom window manager decorations; both make the app inconsistent with the rest of the user's desktop. Because the fixed-size fonts are also quite small, they may be ann attempt to work around the fixed-width vertical column, and thus a case of two wrongs attempting to make a right.
There is simply no excuse for Songbird's eliminating the system's window manager frame and buttons to redraw its own smaller, uncustomizable, and Freedesktop noncompliant substitutes. There is a theme that attempts to re-enable the default window manager controls and buttons, but it is broken -- the menus are out of alignment and do not read the correct colors, leading to white-on-white text and other breakage.
Plus, the built-in themes are also extremely low contrast (one is dark gray on black, the other off-white on white), which is a separate problem. It makes me want to coin a new law of usability design -- "the cool-looking is the enemy of the good." Given that Songbird is themable via XUL, there may be hope that someone will write a proper theme, but in the meantime the app remains a tricked-out reminder of the developers' experience as coders on the project with the low point in the history of skinnable UIs, Winamp.
Finally, Songbird can't seem to make up its mind about its own logo. The app's now-playing faceplate, About dialog window, and Web site masthead all use one logo (a silhouetted, perched bird), but the rest of the Web site, marketing materials, and info use a juvenile and unprofessional flatulent cartoon character, and the application icon uses an egg.
Songbird has set itself a lofty goal; the audio player market is highly saturated, and on both free and non-free desktops the big players are deeply entrenched. However, the free software community that enabled Mozilla Firefox to grow into the best Web browser in the world can do the same for music apps.
Songbird 0.25's technical underpinnings are excellent, and its integrated interface to the Web is insightful. This puts it on par with Miro, which is not merely a good video player but offers users a different enough experience that they have a compelling reason to switch. The potential to create that different experience is Songbird's real strength.
But when I look at the current version, the conscious choice to follow in the design decisions of iTunes and Winamp is holding it back in a big way. Those apps contain their share of mistakes, and creating a player that imitates them is a surefire way to inhibit Songbird's chances for success. Outside-the-box thinking led Firefox to innovations like tabbed browsing and bookmarklets -- I hope Songbird lets go of the past and opens up to unusual possibilities, too.