When Urs Fleisch needed a utility to edit the tags of MP3 files in 2002, none of the existing programs available on Linux suited his needs. At first he tried to enhance TkTag, a Perl application, but he soon realized that he had to write his own application to get what he really wanted. Fleisch created Kid3, an audio tag editor that follows the Unix philosophy of “do one thing and do it well.”
Kid3 originally ran on KDE, but nowadays it runs on Linux, Windows, and Mac OS X. It handles not only ID3 tags in MP3 files, but also tags in Ogg/Vorbis, FLAC, MPC, MP4/AAC, MP2, Speex, TrueAudio, WavPack, WMA, WAV, and AIFF files, and it lets you edit all tags in a file, not just a selected subset.
Kid3 has a simple user interface, but it’s powerful under the hood. If you want to get more out of it, you can define your own import, export, filename, and tag formats using regular expressions, add cover art sources with URL conversions, use custom filters, script it with D-Bus, and configure custom user commands. To get the most out of Kid3, Fleisch advises users read the Kid3 handbook. “When they know the basic usage, they can start with custom formats for import, export, filenames, and filters.”
Fleisch has been working on the code in his free time for eight years, for an average of one work day per week. He codes in Emacs, and builds the software with autoconf/automake for KDE 3 and cmake for KDE 4. For the version without KDE dependencies he relies on QMake and Qt, the cross-platform application framework.
“I make two releases per year,” Fleisch says. “Most new features are requests from users. Kid3 is rather feature-complete, but there is room for improvement, perhaps in areas like editing of synchronized lyrics or setting tag fields by extracting information from other tag fields. Users can help me by reporting bugs, suggesting new features, providing translations, and telling other people how happy they are with Kid3 so that more people use it.”