Commit b0448e51 authored by Michael Niedermayer's avatar Michael Niedermayer

Merge commit 'be327100'

* commit 'be327100':
  jpeg2000: Define the maximum decomposition levels

Conflicts:
	libavcodec/jpeg2000.h
Merged-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parents 3f036432 be327100
......@@ -67,7 +67,9 @@ enum Jpeg2000Quantsty { // quantization style
#define JPEG2000_MAX_CBLKW 64
#define JPEG2000_MAX_CBLKH 64
#define JPEG2000_MAX_RESLEVELS 33
#define JPEG2000_MAX_DECLEVELS 32
#define JPEG2000_MAX_RESLEVELS (JPEG2000_MAX_DECLEVELS + 1)
// T1 flags
// flags determining significance of neighbor coefficients
......@@ -143,8 +145,8 @@ typedef struct Jpeg2000CodingStyle {
} Jpeg2000CodingStyle;
typedef struct Jpeg2000QuantStyle {
uint8_t expn[32 * 3]; // quantization exponent
uint16_t mant[32 * 3]; // quantization mantissa
uint8_t expn[JPEG2000_MAX_DECLEVELS * 3]; // quantization exponent
uint16_t mant[JPEG2000_MAX_DECLEVELS * 3]; // quantization mantissa
uint8_t quantsty; // quantization style
uint8_t nguardbits; // number of guard bits
} Jpeg2000QuantStyle;
......
......@@ -396,7 +396,7 @@ static int get_qcx(Jpeg2000DecoderContext *s, int n, Jpeg2000QuantStyle *q)
x = bytestream2_get_be16u(&s->g);
q->expn[0] = x >> 11;
q->mant[0] = x & 0x7ff;
for (i = 1; i < 32 * 3; i++) {
for (i = 1; i < JPEG2000_MAX_DECLEVELS * 3; i++) {
int curexpn = FFMAX(0, q->expn[0] - (i - 1) / 3);
q->expn[i] = curexpn;
q->mant[i] = q->mant[0];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment