[flac-dev] FLAC 1.2.0 backwards-compatibility break not in changelog?
Martijn van Beurden
mvanb1 at gmail.com
Thu May 2 12:31:25 PDT 2013
Hi all,
Sorry for bringing this up this short before the release, but I noticed
something rather strange.
I was doing some more exotic checks on the last pre-release when I tried
test_streams.sh with FLAC 1.3.0 encoding and an older version (1.1.0 or
something like that) decoding. This failed for 24-bit samples and I
wondered why. After quite some tests and hex-editors, I found out this
is because older decoders do not support the RICE2 partition. This was
added with FLAC 1.2.0, but it's not in the changelog.
I found this e-mail on the list which I think is related:
http://lists.xiph.org/pipermail/flac-dev/2007-April/002179.html It looks
like RICE2 was implemented in the decoder just before the release of
1.2.0. (See
http://flac.cvs.sourceforge.net/viewvc/flac/flac/src/libFLAC/stream_decoder.c?view=log
revision 1.138 and the 1.2.0 release tarball)
I don't know why this isn't on the changelog, but it is probably still a
good idea to add it. This only breaks compatibility for 24-bit streams.
(So: decoders older than 1.2.0 might not be able to decode 24-bit FLAC
files made by libFLAC 1.2.0 or newer)
Oh, and for the record, if I disable all 24-bit tests, it works fine:
flac-1.1.0 is able to to decode streams encoded by flac-1.3.0pre4
working through test_streams.sh :)
More information about the flac-dev
mailing list