History:ID3v2.4.0

From MusicBrainz Wiki
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

I wish to collect info about application/libraries that support ID3v2.4.0 tags. Docs that make up the id3v2.4.0 standard. I also would like to collect tips for people writing code to read/write 2.4.0 tags.

Libraries

I'm mostly intrested in libs that can read AND write id3v2.4.0 tags

eyeD3
Python library see http://www.travisshirk.net/eyeD3/
libid3tag
C library see http://www.underbit.com/products/mad/
MP3::Info
Perl package see http://sf.net/projects/pudge/
normalize
comes with a C library called nid3lib (writing RVA2 tags) see http://www1.cs.columbia.edu/~cvaill/normalize/
pyid3
Python library as part of tunetagger see http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/tunetagger/pyid3/
TagLib
C++ library. This is a high level library supporting ID3v1/2, Ogg Vorbis and FLAC see http://developer.kde.org/~wheeler/taglib.html
mutagen
Python library see http://www.sacredchao.net/quodlibet/wiki/Development/Mutagen

Applications

Bugs

MP3::Info can't write id3v2 tags. It does a good job of reading them, though.

iTune writes some comments with a frame name of 'COM '. See http://use.perl.org/~pudge/journal/10555

Some implementation NULL terminate all strings, others only NULL terminate the last string in the frame.

MP3ext writes the string "MP3ext " in the padding area, where the specs call for only NULLs to be written.