As I understand it, any attribute=value line in a vorbis comment
can be arbitrarily long (up to 2^32 -1 bytes). The easytag
program allows adding the album cover art and other images into
the vorbis comment as ALBUMART=xxxx where xxxx is a base64 encoded
data of the image file. This makes for a very long line.
If I do this to extract the vorbis comment of a file with
an embedded cover art (the image is over 60K bytes in size):
$ vorbiscomment -l file.ogg > commentfile
It dumps the contents correctly.
However, if I try writing that result back to the file:
$ vorbiscomment -w -c commentfile file.ogg
This fails with the error:
bad comment: "xxxx"
bad comment: "xxxx"
bad comment: "xxxx"
bad comment: "xxxx"
bad comment: "xxxx"
...
where xxxx are different portions of the album art base64 string,
each one 1024 bytes long. Some data is written to the COVERARTtag in the vorbis
file, but only a small portion of the original.
It seems that the "vorbiscomment -w" operation on this long line
caused it to want to split the line up into 1024-byte pieces,
and of the subsequent pieces no longer has the COVERART= tag
so it's an invalid entry.
Is this a bug?
P.S. This is with vorbiscomment 1.1.1 on Linux.
-Ti