Aug 26, 2006
Quod Libet and Mutagen
It started when I wanted to remove APEv2 tags from some of my music files. For some reasons Rhythmbox–or rather GStreamer–prefers using APEv2 tags over ID3v2 tags, and the current version of EasyTag in Ubuntu Dapper does not seem to support APEv2 tags. So I wanted to just remove the APEv2 tags altogether. Googling around lead me to mutagen-inspect which is part of the Mutagen library, which in turn is used by Quod Libet. I’ll talk more about Quod Libet later, it’s even more interesting than Mutagen.
It turned out that Mutagen (and Quod Libet) are in the Dapper universe repository, so I easily did sudo apt-get install python-mutagen to install the library. Based on the tutorial, I quickly wrote a very simple Python script to remove all the APEv2 tags from my music files:
import os.path
from mutagen.apev2 import APEv2
from mutagen.apev2 import APENoHeaderError
# Work in current directory, and
# assumes all files are regular files.
for file in os.listdir("."):
try:
a = APEv2(file)
a.delete()
except APENoHeaderError:
pass
So that’s done.
I was curious about Quod Libet, though. So I did a sudo apt-get install quodlibet quodlibet-ext quodlibet-plugins to check it out. I was happy, and now I can proudly say that I have switched from Rhythmbox to Quod Libet. Rhythmbox is not bad, but it just feels so limited after trying amaroK, Muine, Listen, Banshee or even iTunes. The only things that have kept me using Rhythmbox are multimedia keys support, ease of use, intuitiveness, and resource friendliness. Being included in the Ubuntu repositories is merely a bonus, not a requirement.
Some of Quod Libet’s features which I like:
Powerful built-in tag editing. Why Rhythmbox waited so long to support tag editing is beyond me. I had to rely on EasyTag to tag my music files when I was using Rhythmbox. Not anymore. I can just edit the tags straight in Quod Libet. I can even edit multiple files easily, rename all the files using a pattern that I specify, automatically fill the tags based on the file names, etc. just like in EasyTag. Quod Libet also comes with Ex Falso, a standalone tag editor that uses the same backend as Quod Libet, i.e. Mutagen.
Multimedia keys. I have one of those keyboards that have multimedia keys, so I can play, pause, skip to the next/previous track, mute, increase/decrease volume, and so on by just pressing the corresponding buttons directly on my multimedia keyboard. And it works globally in GNOME, so I can skip to the next track while I’m typing this blog entry in Firefox, without changing the application focus or touching the mouse at all.
Plugins. I like the Download Album Art plugin. I had to edit it a little bit to make it work with Quod Libet 0.18 (the current version in Dapper), simply comment out the line that imports SongsMenuPlugin, and change the class DownloadAlbumArt to inherit from
objectinstead of SongsMenuPlugin.There’s a “refresh library” function that can scan the contents of your library folder for changes and update Quod Libet’s library accordingly. It does not depend on other system like inotify, gamin, fam, etc., but it’s not automatic. Which is OK for me. It doesn’t take more than one minute to rescan my library (slightly less than 8000 files). The latest version probably supports watching a folder for changes to automatically update the library, but I’m not sure.
Many ways to manage and view the library. You can even use regular expressions for filters if you want!
System tray icon with configurable tooltip display.
It remembers the last song played, the last view opened, the last filter, etc.
Other interesting features that I have yet to try:
ReplayGain support.
Download lyrics (via plugin).
Regarding resource usage, more specifically memory, Quod Libet uses slightly more memory (~10MB according to htop) compared to Rhythmbox. Meh. It’s good enough for me. The only thing that didn’t work for me was MPEG4-AAC playback (viewing and editing tags in MPEG4-AAC files worked, though), I don’t know whether it’s only supported in the newer version or I need to install something else first. Having said that, it’s been a happy experience overall.
In this day and age, who honestly still uses XMMS or Winamp to manage their music library?
Update: MPEG4-AAC didn’t work because the package gstreamer0.10-plugins-bad was not installed. The wiki page on RestrictedFormats did not mention anything about it, so I updated the page.
Follow
For a newbie Ubuntu’s user, i.e: me, XMMS seems suffice enough (I love the “J” shortcut).
I used to love to edit the ID3V2 tag but not anymore.
I used to have about 40GBs of MP3s but not anymore.
All MP3s are moved into a new box, and my friend who own the box is prolific in editing ID3V2 tag using Windows Media Player.
I just use him, reap, and benefits :D
I’m not a big fan of RhytmBox, though. It gives me a feeling about “bloating application”. So maybe, in my spare time sometime soon, I will give Quod Libet a shoot.
In the meantime, if you don’t mind, I add this page into my Wiki. Well, as a remainder for me :)
When you’re a control freak and a perfectionist like me, and you have a huge music library, then you can appreciate having a powerful music library application to manage your music collection.
I can understand that for most people who tried this kind of music player with powerful library management features came from using very simple MP3 players like Winamp and XMMS, they will think that “more features == bloat” because they can’t (yet) appreciate the features. I’m speaking from experience, actually. I was one of them once.
Quod Libet is awesome. I’m learning python by tearing apart Mutagen at the moment, and it handles my entire library without a fuss.
It was the brilliant tag editing with flac support that did it for me. I’ve been moving my music library to lossless as much as I am able, and editing by hand is ludicrous.
I switch browser views by whatever’s convenient or what my mood takes me; I love this feature, because it doesn’t assume what kind of set-up you prefer.
Excellent, excellent program. Try it.