Linux – Repair encoding of ID3 tags

id3linuxmp3tags

I have inherited about 2000 MP3 files. For the majority of them, their ID3 tags display garbled in Amarok. I need a software that upgrades the ID3 tags to v2.4 type $03 (i.e. UTF-8 encoding), removes any v1 tags, and is also smart about figuring out the original encoding on a case-by-case basis (most likely one of Windows-1252, BOM-less UTF-16 or GB18030).

Before I start programming this on my own on top of TagLib, is there already such a complete solution I could use?

Do not recommend Musicbrainz – it is heavily biased to United States published music and near useless to me. Do not recommend general ID3 tagging software without testing it first against my requirements – most of them

  • do not support v2.4
  • have, frankly said, quiet retarded ideas about character encoding
  • have no automation features (I do not want to spend my time editing manually).

I am also not (yet) interested in tag cleaning, mass renaming or categorisation software only; I first have do the afore-mentioned normalisation step.

Best Answer

You want Ex Falso, the tag editor included in the Quod Libet project. Picard (the MusicBrainz tagger) may use the same tagging library, but QL originated it.

In particular, you want the Mutagen tagging library, which supports id3v2.4 (and by "support" I mean "enforce" ...militarily...). It is also excellent with character encodings, and includes a basic scriptable commandline tagger (mid3v2). As far as your normalization step goes, Mutagen only saves tags in ID3v2.4. It is certainly capable of converting all text into UTF-8, but you may need to script that yourself (I believe that the mid3v2 tool's defaults are to keep the current encoding where possible, and I don't know if it can be told to save everything in a particular encoding). Mutagen is written in Python.

Ex Falso is a nice, clean GUI , and supports most of the major retag-multiple-files features you'd expect. I don't think it does much in the way of internet lookups and I don't know how it is with album artwork -- Quod Libet may support that; Ex Falso can do it with a plugin, should one exist, though one might not exist. I've never needed that functionality -- I use EF and mid3v2 in concert to handle my retagging needs.

Ex Falso, part of the Quod Libet project

Related Question