From d74a8ec85dd83f50bf03938095890267d59d9825 Mon Sep 17 00:00:00 2001 From: Marcoen Hirschberg Date: Wed, 7 Nov 2007 18:18:56 +0000 Subject: from ffmpeg: Add support for FLAC's new RICE2 entropy coding method. fixes 24-bit FLAC files encoded with flac-1.2.1 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15517 a1c6a512-1295-4272-9138-f99709370657 --- apps/codecs/libffmpegFLAC/decoder.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'apps/codecs') diff --git a/apps/codecs/libffmpegFLAC/decoder.c b/apps/codecs/libffmpegFLAC/decoder.c index 88fcbfd0bd..1d46eda353 100644 --- a/apps/codecs/libffmpegFLAC/decoder.c +++ b/apps/codecs/libffmpegFLAC/decoder.c @@ -144,7 +144,7 @@ static int decode_residuals(FLACContext *s, int32_t* decoded, int pred_order) int sample = 0, samples; method_type = get_bits(&s->gb, 2); - if (method_type != 0){ + if (method_type > 1){ //fprintf(stderr,"illegal residual coding method %d\n", method_type); return -3; } @@ -157,8 +157,8 @@ static int decode_residuals(FLACContext *s, int32_t* decoded, int pred_order) i= pred_order; for (partition = 0; partition < (1 << rice_order); partition++) { - tmp = get_bits(&s->gb, 4); - if (tmp == 15) + tmp = get_bits(&s->gb, method_type == 0 ? 4 : 5); + if (tmp == (method_type == 0 ? 15 : 31)) { //fprintf(stderr,"fixed len partition\n"); tmp = get_bits(&s->gb, 5); -- cgit v1.2.3