The original Beep Media Player was, like Audacious, a fork of XMMS. The difference was that BMP used the GTK toolkit, even though it still basically looked like a WinAmp clone. BMPx is the development version of BMP, which stopped in October 2005. BMPx has diverged considerably from the original, and has as of the 0.40.x line started to look a lot more like a polished GNOME app than a project that owes its heritage to XMMS.
The splash screen is a gaudy piece of work, not even bothering to display the version number, but I tested 0.36.1. I immediately had problems with the program not respecting the dimensions of my desktop. The bottom of the player window went below my taskbar, and there was nothing I could do to change that. I also discovered that the Library function was lost to me, since BMPx refused to recognize that there were any hard disks in my computer (I used debs from the developer’s Ubuntu repo).
The program is visually gorgeous, though, from the deep blue splash screen to the polished player window. It has limited options for configuration, but it has album art downloading, after a fashion, and some degree of customization. It uses
gstreamer (and only gstreamer) as an audio backend. The third screenshot for this series was not made by me, but rather taken from the BMPx website: it’s from the experimental 0.40.x line, and showcases the Media Library view, which is more like Listen! (see below) than anything else. Which isn’t a bad thing: BMPx tends to be fast, since it’s not written in a scripting language, but rather is written in C++ (I think).
Exaile’s stated purpose is to be an Amarok clone, but built with GTK+ instead of the Qt toolkit. That’s a pretty tall order for a program early in its development, but Exaile is making headway. I reviewed version 0.2.7, though 0.2.8 came out in the interim.
After selecting the library source, Exaile immediately began building my database. Like most other players, Exaile uses an SQLite database, which is fine for small music collections, but Exaile becomes slow and buggy above collections of ≈15’000 files—the developers know about this and are working on it. Seeing as how one of Amarok’s appealing features is its ability to use either SQLite, MySQL, or PostgreSQL, I would think additional database support is high on the list of priorities, but I don’t know.
Exaile’s sidebar is layed out exactly like Amarok’s, with a vertically-tabbed interface that offers multiple views of one’s collection. There is the library view, which offers a tree-based listing of albums; there is a playlist tab, which stores custom and built-in dynamic playlists; there is a tab for internet radio; finally, there is a tab for a filesystem browser.
Also like Amarok, it has an excellent album art manager with a dedicated tool for downloading in one fell swoop—it seems a bit faster, even, that Amarok in this regard.
The main player window offers a second horizontally-tabbed interface, which by default shows the tracks currently queued for play. Unlike Amarok, however, there is no contextual view that provides a tracklisting, other albums by the current artist, or whatever data is scripted to display. The only contextual information is the album art, artist, album, and track title above the playlist; the play control resides underneath.
Exaile has very few default plugins, and no user-supplied plugins that I am aware of. Offhand, I’m not even sure what the API is: I’m guessing that it’s Python-based, because Exaile is written largely in Python, requiring PyGTK as well as Python wrappers for SQLite. Python is a perfectly good language, of course, but pales in comparison to Amarok’s native C++ code (with a splash of Ruby in the later versions). It uses Mutagen for metadata editing; Mutagen is a very popular module which is used in several different projects, like Quod Libet and Listen, as well. While Amarok allows for the xine engine, Exaile only supports gstreamer, like just about all of its GTK+ peers.
Exaile offers a clear Preferences screen for its few options, which include optional iPod support, last.fm (Audioscrobbler) support, OSD, and some library options.
I really like Exaile, insofar as I like Amarok’s design principles and functionality, but prefer the look of GTK’s widgets. If you don’t have strenuous requirements for your music collection, Exaile might just be a really good option.