MauritsVB
2014-Dec-12 13:25 UTC
[flac-dev] Parts of the standard not supported in reference decoder?
I am working on creating a set of FLAC files for a ?decoder compliance test corpus? and am looking for examples of things that are part of the standard but not supported in the reference decoder. I am not looking for things missing from the reference encoder (such as variable block sizes). I seem to recall someone on this list (most likely lvqcl or Martijn van Beurden) mentioning something about a standard-compliant potential improvement to compression that can?t be pursued at this point because the reference decoder doesn?t support it. Any idea what that was? Any other ideas about what might be missing from the decoder despite being described in the standard? Maurits
Martijn van Beurden
2014-Dec-12 18:05 UTC
[flac-dev] Parts of the standard not supported in reference decoder?
Op 12-12-14 om 14:25 schreef MauritsVB:> things that are part of the standard but not supported in the reference decoder. I am not looking for things missing from the reference encoder (such as variable block sizes).Isn't this self-contradicting more or less? I mean, FLAC should be able to decode every stream it has ever encoded since the freeze in FLAC 0.5, so there really should not be anything in the standard and in the encoder, but not in the decoder. We should have noticed that long ago, anyway. Op 12-12-14 om 14:25 schreef MauritsVB:> Any idea what that was? Any other ideas about what might be missing from the decoder despite being described in the standard?The only thing that is in the standard but not implemented in the reference decoder that I know of is bitdepths other than 8, 16 or 24 (so, bitdepths like 4 bits, 21 bits and 32 bits for example) I really think that improved compression was me talking about variable blocksizes. They are indeed supported by the reference decoder, but that functionality has never been implemented in the encoder.
MauritsVB
2014-Dec-13 16:04 UTC
[flac-dev] Parts of the standard not supported in reference decoder?
On 12 Dec 2014, at 18:05, Martijn van Beurden <mvanb1 at gmail.com> wrote:> Op 12-12-14 om 14:25 schreef MauritsVB: >> things that are part of the standard but not supported in the reference decoder. I am not looking for things missing from the reference encoder (such as variable block sizes). > > Isn't this self-contradicting more or less? I mean, FLAC should > be able to decode every stream it has ever encoded since the > freeze in FLAC 0.5, so there really should not be anything in > the standard and in the encoder, but not in the decoder. We > should have noticed that long ago, anyway. >Of course, I?m not referring to methods supported in the encoder but not the decoder as that would indeed be noticed quite quickly. I was looking for methods that might be described in the format/standard but not (yet) implemented in either encoder or decoder. My intention is to build a test corpus for decoders which includes various edge cases. That?s why I was specifically looking for anything missing in the most common implementations.> > Op 12-12-14 om 14:25 schreef MauritsVB: >> Any idea what that was? Any other ideas about what might be missing from the decoder despite being described in the standard? > > The only thing that is in the standard but not implemented in > the reference decoder that I know of is bitdepths other than 8, > 16 or 24 (so, bitdepths like 4 bits, 21 bits and 32 bits for > example) > > I really think that improved compression was me talking about > variable blocksizes. They are indeed supported by the reference > decoder, but that functionality has never been implemented in > the encoder.Yes, I?m planning to use FLAKE to generate files with variable block sizes to be added to the test suite. Anyway, unless anyone has other suggestions of missing implementations, I will work on the test suite now and post back here once I have things to share.