Don't append a framing bit when writing Xiph comments to FLAC files since this

renders them unplayable with some players.  Thanks to Jason Lee for tracking
this down!

CCMAIL:75880-done@bugs.kde.org


git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@308437 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
This commit is contained in:
Scott Wheeler 2004-05-04 01:47:01 +00:00
parent 5895810131
commit ceb989f170
3 changed files with 19 additions and 4 deletions

View File

@ -132,7 +132,7 @@ void FLAC::File::save()
Tag::duplicate(d->tag, d->comment, true);
}
d->xiphCommentData = d->comment->render();
d->xiphCommentData = d->comment->render(false);
ByteVector v = ByteVector::fromUInt(d->xiphCommentData.size());

View File

@ -197,6 +197,11 @@ void Ogg::XiphComment::removeField(const String &key, const String &value)
}
ByteVector Ogg::XiphComment::render() const
{
return render(true);
}
ByteVector Ogg::XiphComment::render(bool addFramingBit) const
{
ByteVector data;
@ -238,8 +243,9 @@ ByteVector Ogg::XiphComment::render() const
}
// Append the "framing bit".
data.append(char(1));
if(addFramingBit)
data.append(char(1));
return data;
}

View File

@ -159,7 +159,16 @@ namespace TagLib {
/*!
* Renders the comment to a ByteVector suitable for inserting into a file.
*/
ByteVector render() const;
ByteVector render() const; // BIC: remove and merge with below
/*!
* Renders the comment to a ByteVector suitable for inserting into a file.
*
* If \a addFramingBit is true the standard Vorbis comment framing bit will
* be appended. However some formats (notably FLAC) do not work with this
* in place.
*/
ByteVector render(bool addFramingBit) const;
protected:
/*!