Managing music

Got Rhythm?


Originally inspired by Apple's iTunes, Rhythmbox organizes your music collection, and more.

By Dave Phillips

James Thew, Fotolia

The Rhythmbox project page [1] concisely describes the program as an integrated music player and management application. Originally inspired by Apple's iTunes, Rhythmbox organizes your music collection for easy searching and sorting, provides lyrics and album art displays, connects to online music stores, supports iPod and other removable media, and in general is a very cool program (Figure 1). In fact, the designers of Ubuntu 8.04 (aka Hardy Heron) considered Rhythmbox cool enough to be the distribution's music manager of choice.

Figure 1: The Rhythmbox program lets you manage your tunes in Linux.

First a few words about the system I used to test Rhythmbox. The testing machine includes an AMD64 3800+ CPU with 1GB of RAM and a 230GB hard disk. This machine was built for quiet operation in my home studio, thanks to an Antec case, a Zalman CPU fan, and a fanless nVidia GeForce 7600GS video card. The box is used primarily for listening to music, surfing YouTube and other web video channels, watching DVDs and VCDs, and auditioning my studio recordings on a somewhat typical desktop system. For high-quality audio I/O, I installed an M-Audio Delta 66 digital audio system and a Creative Labs SBLive Value sound card. The Delta provides a pro-audio interface, and the SBLive gives me an external MIDI connection, an onboard synthesizer, and 5.1 surround sound support.

The speaker array consists of a pair of Peavey Mediavoice powered speakers and a 2.1 sound system from Creative Labs (also powered). Although this hardware is not exactly contemporary, it provides good support for 5.1 audio from my DVDs and stereo sound from my CDs and other music media.

On the software side, I used only the programs and utilities supplied by Hardy Heron. This review is intended for the normal user, not the audio professional, and it reflects the operations and procedures experienced by an average user who simply wants to listen to music with as little complication as possible.

The Hardy Heron ISO is available at Ubuntu's site. After downloading it, I burned it to a CD, put it in the disc drive tray, and rebooted. When the setup screen appeared, I opted to run the system from the CD (as a Live CD). I could have purchased another drive for the system, but I wanted to test Heron for its performance with media files in a live setup. I'm happy to report that I have no reservations about recommending Heron's performance from a Live CD.

I'm also happy to say that I no longer cross my fingers and pray for a hassle-free installation of Linux. Flawless installation procedures are expected now from mainstream distributions, and I was not disappointed by Ubuntu's excellent engineering for this part of the process. The installer correctly detected and configured every piece of hardware in my machine, including the networking and video cards and both audio devices. Configuration was automatic, but alas, when I tried to play the sample media files, I heard nothing. The alsamixer program verified my mixer settings - everything seemed to be in good working order, and the system did not issue any warnings about an unconfigured component. Fortunately, the fix was simple: I opened System | Preferences | Sound & Video (Figure 2) and changed all the settings from autodetect to ALSA. Voilà! The sample files played flawlessly, I had sound galore, and I was ready to rock with Rhythmbox.

Figure 2: Sound and video preferences for Hardy Heron.

The first time you run Rhythmbox, the program asks for the location of your music files and folders. By default, when the Rhythmbox main display opens, you'll see its display panels fill with artist names and album titles from the collections found in your designated music path (see Figure 1). If you don't keep your files in a single place, don't worry; you can always tell Rhythmbox to search elsewhere for your music after the program has started.

Playing a file is as simple as double-clicking on the file name. If you're not sure whether the selected file is the one you want to hear, just let the cursor hang over the file name for a moment to hear the first few seconds of the selection. This auditioner is a most helpful feature when you're trying to find a certain song and can't recall its title.

A word concerning supported and unsupported file formats: On a fresh installation, Rhythmbox will list and play WAV, OGG, and other open file formats without complaint. Files in unsupported formats will not appear. However, when I tried to play an MP3, I received a friendly message from Heron informing me that I needed to download and install a non-free package of GStreamer plugins for MP3 files (Rhythmbox's audio engine is based on GStreamer). Dreading a drawn-out process, I was surprised that it took only a few minutes before the system let me know that the necessary software was installed and I could go ahead and play my MP3s. The process is presented so simply that even a Linux newbie should have no troubles with it, and I commend the system designers for this approach to the resolution of the problem of non-free codecs and patent-encumbered file formats.

Features

Playing your music is a trivial operation in Rhythmbox, so now I'll look at what else the program offers. First I'll tour its user interface to get a better appreciation of its features.

Rhythmbox first appears as a single window divided into a top menubar, the playback transport controls, a sidebar list of your music sources, and three panels that list your collection contents by artist name, album title, and selected track(s). Advanced users can redefine the arrangement of the interface components via Edit | Preferences (Figure 3), but new users will likely have no need to change anything at first.

Figure 3: Sound preferences for Rhythmbox.

Now I'll consider the default main display components in some detail, without trying to replace the excellent Rhythmbox manual. However, I want to give readers an idea of the program's depth and flexibility, so I'll start at the top and work my way down the user interface.

The top bar includes menus for Music, Edit, View, Control, and Help functions. Most functions are available from the main display, but some features are available only from the menubar.

The Music menu is where you'll load your music files and collection folders into Rhythmbox. Also, you can use this menu to access the program's network-based features - such as Internet radio, podcast feeds, and the supported online music stores - as well as to scan your removable media (CDs, USB sticks), although Rhythmbox automatically scans and lists any CD you insert while the program is running.

The Edit menu includes various file management functions, such as Remove, Add To Queue/Playlist, Send To Trash, and so on. This menu is also where you'll set your program preferences and manage the Rhythmbox plugins.

The Configure Plugins dialog (Figure 4) is worth some more study. Many neat features in Rhythmbox come from the various plugins it accepts. The Plugin Manager lists the currently available extensions, including song lyrics search and display, visualization displays, support for the iPod and other portable players, FM radio card support, music sharing facilities, and much more.

Figure 4: The Rhythmbox plugin manager.

The View menu includes the typical display options (i.e., which panels will be seen, which will be hidden). It also includes the call to the song lyrics display. The Control menu functions are essentially identical to the transport control GUI. Finally, the Help menu summons the excellent Rhythmbox manual, provides an error reporting service, and includes the usual About items.

Controls and Counter

Nothing extraordinary resides here. Controls are included for playback, go to previous/next song, loop/repeat selection, and random shuffle (randomizes the order of songs in a playlist). Buttons are also present for toggling the browser views and for activating the visualization display.

Under the transport controls are the title of the selection currently playing, along with a progress indicator and a counter showing the elapsed time in hours/minutes/seconds.

Sidebar

The sidebar includes the top-level labels for your music library, the online stores available to Rhythmbox, your playlists, and your external devices (CD drive, portable players, other removable media). The Library lists the access points for your playback queue, the current contents of your music collection, and the available podcast feeds and Internet radio streams. Selecting one of these items refreshes the lists in the main display panels, from which you can then select which tracks to play.

By default, the Stores section lists only Jamendo and Magnatunes, so I checked out both services. Alas, nothing was listed from Jamendo, a service for the dissemination of works specifically licensed under the Creative Commons licenses. The Magnatunes service had plenty to offer that suits my tastes, and I plan to visit the site regularly.

The Playlists section contains three default entries (My Top Rated, Recently Added, Recently Played), but you can define your own playlists. Your personal lists will then appear in this section.

A Devices section appears when you insert a CD into a disc drive or when you connect a portable player to a USB port. Rhythmbox will automatically read and list the device contents, and you can freely add titles from the device to your playlists.

The sidebar contains one more item of interest: the album cover art display. Unlike other players, Rhythmbox does not use your MP3 and OGG file tags to determine which covers to call. Instead, it simply searches the Internet for the relevant artwork.

Main Display Panels

For most users, this part of the program is the heart of the matter. The main display is divided into three panels that list the content of your music collection by artist, album, and track. Searches can be done by arbitrary text string or by clicking on one of the preset search buttons (All, Artists, Albums, Titles). Multiple non-contiguous selections can be made in any of the main panels, and your current selections can be defined as a playlist at any time.

There isn't much to add to this description of the main display. Simplicity is the keyword here, and the program designers have ensured that even the newest of newbies can intuit how to operate Rhythmbox from its main display. The program's basic operation really can't get any easier: First, you make your selections, then you click the Play button, and now you have music.

Finally, at the bottom of the program's window, Rhythmbox lists the songs in the Album with their total length in hours/minutes/seconds. The file size (MB) appears below the album art.

Conclusions

Rhythmbox comes with an excellent user's manual, and further information about the program can be found on the project's website and the Rhythmbox Wikipedia page. Some music players are simple lightweight applications that do little more than play the standard audio and music file formats, whereas others provide a broad array of services and features. Rhythmbox obviously falls into the latter category, and I was impressed with it. The program is easy to use, and I was impressed with its file and folder management features, which are the best I've encountered so far.

Alas, I did not get to test a few features. Most significantly, I was unable to check out the program's rip and burn functions for creating my own CDs. I'm not sure whether it was simply disabled for live Heron sessions, but the feature is listed as present in Rhythmbox versions from the 0.9 release onward.

Is Rhythmbox perfect? Well, it's pretty close, although I'd like to see support for the JACK audio server and for the real-time rendering of standard MIDI files. I also miss a display for artist biographies. Nevertheless, Rhythmbox is impressive enough as is, and I can understand why the Ubuntu engineers chose it for Heron's default music management system. It is indeed exceptionally cool.

INFO
[1] Rhythmbox: http://www.gnome.org/projects/rhythmbox/