avcodec/jpeg2000: Support 32 decomposition levels
authorMichael Niedermayer <michaelni@gmx.at>
Sun, 28 Jun 2015 01:16:06 +0000 (03:16 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 28 Jun 2015 01:16:06 +0000 (03:16 +0200)
Fixes Ticket4680

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/jpeg2000.c
libavcodec/jpeg2000.h

index 2a45089..b60e770 100644 (file)
@@ -363,7 +363,7 @@ int ff_jpeg2000_init_component(Jpeg2000Component *comp,
                         /* Formula example for tbx_0 = ceildiv((tcx_0 - 2 ^ (declvl - 1) * x0_b) / declvl) */
                         band->coord[i][j] =
                             ff_jpeg2000_ceildivpow2(comp->coord_o[i][j] -
-                                                    (((bandno + 1 >> i) & 1) << declvl - 1),
+                                                    (((bandno + 1 >> i) & 1LL) << declvl - 1),
                                                     declvl);
                 /* TODO: Manage case of 3 band offsets here or
                  * in coding/decoding function? */
index 541ea5c..7a21c4e 100644 (file)
@@ -67,7 +67,7 @@ enum Jpeg2000Quantsty { // quantization style
     JPEG2000_QSTY_SE    // scalar expounded
 };
 
-#define JPEG2000_MAX_DECLEVELS 32
+#define JPEG2000_MAX_DECLEVELS 33
 #define JPEG2000_MAX_RESLEVELS (JPEG2000_MAX_DECLEVELS + 1)
 
 #define JPEG2000_MAX_PASSES 100