APIC frames added with taglib don't show in Windows Media Player

Scott Wheeler wheeler at kde.org
Sun May 21 00:38:45 CEST 2006

On May 20, 2006, at 12:40 PM, Lukáš Lalinský wrote:

> Roel  wrote / napísal(a):
>> Ah I see, that could very well be the problem. My first, probably  
>> naive,
>> attempt was to change ID3V2::Header::render() to put 2.3 as the  
>> version
>> number, but that didn't work. Is there a way to make TagLib write  
>> v2.3
>> tags?
> The main difference between 2.3 and 2.4 is in lack of UTF-8 in 2.3  
> and in format
> of frame sizes (2.3 uses 32 bit integers, 2.4 uses "synch-safe"  
> integers). There
> is actually a few more differences (extended header, support for  
> footers, ...),
> but TagLib doesn't write tags with these features so they can be  
> simply ignored.
> I have a patch with code that allows TagLib to write both 2.4 and  
> 2.3 tags
> somewhere, but this code doesn't convert 2.4 specific frames to 2.3  
> and vice
> versa. So it works only if you can guarantee that you will be using  
> frames
> supported by selected ID3 version.

I'm away from home for the moment, so this is hardly a comprehensive  
response, but really it's not quite that simple.  There are a lot of  
subtle differences between ID3v2.3 and ID3v2.4 (i.e. flag positions),  
so it's really not safe to just have it write a different version  
into the header.

I believe that the latest versions of WMP support ID3v2.4; I know  
that iTunes finally supports it as of about a year ago.

There is no version of TagLib that supports writing ID3v2.3 tags --  
the ID3v2.4 standard is much older than TagLib.  (As I've said before  
-- ID3v2.4 is 6 years old; it's kind of silly that there are still  
some things that haven't updated yet.)


More information about the taglib-devel mailing list