ffmpeg | branch: master | Luca Barbato <lu_z...@gentoo.org> | Fri Sep 11 18:19:39 2015 +0200| [5788623d29c3e806a7879210986110aced758dc2] | committer: Luca Barbato
jpeg2000: Split codeblock decoding from the main tile decoding That loop is completely stand-alone. > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=5788623d29c3e806a7879210986110aced758dc2 --- libavcodec/jpeg2000dec.c | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/libavcodec/jpeg2000dec.c b/libavcodec/jpeg2000dec.c index f5d5daf..2aea844 100644 --- a/libavcodec/jpeg2000dec.c +++ b/libavcodec/jpeg2000dec.c @@ -1060,14 +1060,12 @@ static inline void mct_decode(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile) s->dsp.mct_decode[tile->codsty[0].transform](src[0], src[1], src[2], csize); } -static int jpeg2000_decode_tile(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile, - AVFrame *picture) +static void tile_codeblocks(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile) { + Jpeg2000T1Context t1; + int compno, reslevelno, bandno; - int x, y; - uint8_t *line; - Jpeg2000T1Context t1; /* Loop on tile components */ for (compno = 0; compno < s->ncomponents; compno++) { @@ -1116,6 +1114,17 @@ static int jpeg2000_decode_tile(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile, /* inverse DWT */ ff_dwt_decode(&comp->dwt, codsty->transform == FF_DWT97 ? (void*)comp->f_data : (void*)comp->i_data); } /*end comp */ +} + +static int jpeg2000_decode_tile(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile, + AVFrame *picture) +{ + int compno; + int x, y; + + uint8_t *line; + + tile_codeblocks(s, tile); /* inverse MCT transformation */ if (tile->codsty[0].mct) _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog