diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-01-20 18:31:52 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-01-20 18:46:37 +0100 |
commit | 723e7b86ea4d117c34a121512eddbcb32743b96e (patch) | |
tree | d5bac7bdb09d9a4aec68a4c4acbbed6bfd5ee8ec /libavcodec | |
parent | 6ba02602aa7fc7d38db582e75b8b093fb3c1608d (diff) | |
download | ffmpeg-723e7b86ea4d117c34a121512eddbcb32743b96e.tar.gz |
avcodec/jpeg2000dec: calculate planar and pixelsize from pixel format descriptor
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/jpeg2000dec.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/libavcodec/jpeg2000dec.c b/libavcodec/jpeg2000dec.c index 3195104ad7..ddbf6c5351 100644 --- a/libavcodec/jpeg2000dec.c +++ b/libavcodec/jpeg2000dec.c @@ -1212,8 +1212,11 @@ static void mct_decode(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile) static int jpeg2000_decode_tile(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile, AVFrame *picture) { + AVPixFmtDescriptor *pixdesc = av_pix_fmt_desc_get(s->avctx->pix_fmt); int compno, reslevelno, bandno; int x, y; + int planar = !!(pixdesc->flags & AV_PIX_FMT_FLAG_PLANAR); + int pixelsize = planar ? 1 : pixdesc->nb_components; uint8_t *line; Jpeg2000T1Context t1; @@ -1287,8 +1290,6 @@ static int jpeg2000_decode_tile(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile, int32_t *i_datap = comp->i_data; int cbps = s->cbps[compno]; int w = tile->comp[compno].coord[0][1] - s->image_offset_x; - int planar = !!picture->data[2]; - int pixelsize = planar ? 1 : s->ncomponents; int plane = 0; if (planar) @@ -1334,8 +1335,6 @@ static int jpeg2000_decode_tile(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile, uint16_t *linel; int cbps = s->cbps[compno]; int w = tile->comp[compno].coord[0][1] - s->image_offset_x; - int planar = !!picture->data[2]; - int pixelsize = planar ? 1 : s->ncomponents; int plane = 0; if (planar) |