I am writing a flac decoder and for creating test files I am using AudaCity.
If I choose compression level 8 I sometimes get RICE_CODING_METHOD of 3.
But if I am correct Flac only supports 0 (RICE) and 2 (RICE2).
And if you read here: http://flac.sourceforge.net/format.html#residual (http://flac.sourceforge.net/format.html#residual)
You can see that the value of 11b is reserved. And 3 equals 11b.
But Winamp is able to play the file and I would say winamp uses libflac.
So what to do now?
My guess is that you have a bug elsewhere in your decoder that throws off your bit position.
Unless your file has more than 16bps, the reference encoder should always use a coding method of 0 (RESIDUAL_CODING_METHOD_PARTITIONED_RICE) for all the partitions. Anything else is a good indicator that you're reading too many residuals, not enough, or ones with the wrong value. The reference decoder's analysis option can help you here ("flac -a --residual-text <file.flac>") by allowing you to compare the values the reference decoder sees with what your own decoder sees.
ok thanks i will check that. But I its nice that I was right that 11 is impossible.