ID3V2.4, unsynchronized frames and APIC frame
pujos.michael at laposte.net
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