retitle 307540 Use eyeD3 rather than id3lib tags 307540 + help thanks On Tue, 2005-05-03 at 23:13 +0100, Martin Michlmayr wrote: > * <[EMAIL PROTECTED]> [2005-05-03 21:37]: > > retitle -1 Please drop python-id3lib and use python-eyed3 instead > > Joe, I took a brief look at quodlibet and you can get rid of most of > the nasty code in formats/mp3.py by switching to eyeD3. eyeD3 also > supports Unicode and is maintained unlike python-id3lib.
I'm not sure what "nasty" code you refer to; the nastiest bit is the huge mapping tables for ID3 frame IDs into Quod Libet tag names and TCON IDs into genres, which we'd still need. As indicated at http://www.sacredchao.net/quodlibet/ticket/3 I've looked at eyeD3 and found it completely lacking in documentation. I poked around it for a few hours, but found no easy way to manipulate frames at the level QL wants, and no way at all to support multivalued frames. I'd also like to keep enough control over COMM frames to do the QuodLibet:: namespace trick we use to support unrestricted tags in MP3s. I've reopened the ticket since the abandoning of python-id3lib makes it an issue again, but don't have time to work on it myself. Anyone more familiar with eyeD3 is encouraged to contribute, either by fixing QL or writing documentation for eyeD3. An aside about ID3 tags and encodings: "Unicode support" is not going to magically appear when people switch to eyeD3; anything using libid3-3.8.3 for reading/writing is going to continue to be broken (#213239 among others). This includes Beep, Grip, and EasyTag. I don't know if libid3tag (which GStreamer uses) properly supports it either. The millions of broken files in the wild are also going to remain broken, and need special-casing in tag readers/editors that don't want to suck. Given that fact, Quod Libet ignores the encoding flag for ID3 tags anyway, and just uses UTF-8. It already supports Unicode tags, about as well as anything can given the mess of ID3. Retitling appropriately. -- Joe Wreschnig <[EMAIL PROTECTED]>
signature.asc
Description: This is a digitally signed message part