|
|
|
@@ -1597,7 +1597,7 @@ static int decode_cblk(Jpeg2000DecoderContext *s, Jpeg2000CodingStyle *codsty, |
|
|
|
cblk->data + cblk->length - 2*(term_cnt < cblk->nb_terminations) - t1->mqc.bp); |
|
|
|
} |
|
|
|
|
|
|
|
return 0; |
|
|
|
return 1; |
|
|
|
} |
|
|
|
|
|
|
|
/* TODO: Verify dequantization for lossless case |
|
|
|
@@ -1694,6 +1694,7 @@ static inline void tile_codeblocks(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile |
|
|
|
for (compno = 0; compno < s->ncomponents; compno++) { |
|
|
|
Jpeg2000Component *comp = tile->comp + compno; |
|
|
|
Jpeg2000CodingStyle *codsty = tile->codsty + compno; |
|
|
|
int coded = 0; |
|
|
|
|
|
|
|
t1.stride = (1<<codsty->log2_cblk_width) + 2; |
|
|
|
|
|
|
|
@@ -1723,11 +1724,12 @@ static inline void tile_codeblocks(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile |
|
|
|
cblkno++) { |
|
|
|
int x, y; |
|
|
|
Jpeg2000Cblk *cblk = prec->cblk + cblkno; |
|
|
|
decode_cblk(s, codsty, &t1, cblk, |
|
|
|
int ret = decode_cblk(s, codsty, &t1, cblk, |
|
|
|
cblk->coord[0][1] - cblk->coord[0][0], |
|
|
|
cblk->coord[1][1] - cblk->coord[1][0], |
|
|
|
bandpos); |
|
|
|
|
|
|
|
if (ret) |
|
|
|
coded = 1; |
|
|
|
x = cblk->coord[0][0] - band->coord[0][0]; |
|
|
|
y = cblk->coord[1][0] - band->coord[1][0]; |
|
|
|
|
|
|
|
@@ -1743,7 +1745,9 @@ static inline void tile_codeblocks(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile |
|
|
|
} /* end reslevel */ |
|
|
|
|
|
|
|
/* inverse DWT */ |
|
|
|
ff_dwt_decode(&comp->dwt, codsty->transform == FF_DWT97 ? (void*)comp->f_data : (void*)comp->i_data); |
|
|
|
if (coded) |
|
|
|
ff_dwt_decode(&comp->dwt, codsty->transform == FF_DWT97 ? (void*)comp->f_data : (void*)comp->i_data); |
|
|
|
|
|
|
|
} /*end comp */ |
|
|
|
} |
|
|
|
|
|
|
|
|