ID3V2.4, unsynchronized frames and APIC frame

Michael Pujos pujos.michael at
Mon Jan 28 22:31:02 CET 2008


I'm using Taglib under win32 using the recent port done by /Sergey A. Galin.

/I'm only interested by the APIC frame to get the cover art. There's no 
problem with ID3V2.3, but with 2.4 things
get more complicated as two programs I use, mp3tag and foobar2000 write 
unsynchronized frames and the the image data
gets encoded using this scheme (it took me a while and much googling to 
find this was the cause of image corruption).
It looks like it was the problem with the recent Easytag that would also 
write unsynch frames.

Reading the ID3V2.4 spec I thought to decode the frame a simple 
transformation of the

11111111 00000000 111xxxxx sequence to 11111111 111xxxxx

would solve the problem. But it didn't. The spec is not super clear, so I tought maybe the frame data 
(composed 99% by the image data) would be encoded as synchsafe integers? Can some spec guru confirm this ?
What should I do to decode these frames ?

A lot of Windows software seem to be writing that kind of frame, is it planned to add support in TagLib ?


More information about the taglib-devel mailing list