[Vorbis] vorbiscomment long string bug?

Ti Kan ti at amb.org
Tue Nov 1 07:11:51 PDT 2011


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 COVERART=
tag 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





More information about the Vorbis mailing list