avcodec/ffv1dec: fix some unsupported pix_fmt
authorJérôme Martinez <jerome@mediaarea.net>
Mon, 13 Jun 2016 17:18:22 +0000 (19:18 +0200)
committerMichael Niedermayer <michael@niedermayer.cc>
Mon, 13 Jun 2016 20:07:35 +0000 (22:07 +0200)
commit878c3a36451eaf1ae3ec3d8eab0af11dab0a7695
treef58b0aaea96fb6cd338befd1c26065b998c1036f
parent836f3555a8def29001d7c917d1574a7938d2357b
avcodec/ffv1dec: fix some unsupported pix_fmt

When checking pix_fmt mapping, some bitstreams are mapped to an
incorrect pix_fmt instead of being rejected (ENOSYS).
Actually, such bitstreams are not supported (FFmpeg encoder does not
produce such bitstream, such bitstream may come only from another
encoder for the moment).

- JPEG 2000 RCT 11/13/15/16 bit depths are mapped to a 8-bit FFmpeg
pix_fmt (e.g. bgr0), which is not expected.
- JPEG 2000 RCT 9/10/12/14 bit depths with alpha are mapped to a
FFmpeg pix_fmt without alpha (e.g. AV_PIX_FMT_GBRP9 for 9-bit with
alpha), which is not expected.

The order for choosing the pix_fmt is changed to the one used by YCbCr
selection (<=8 bit first).
" && !f->transparency" is added to the other lines.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/ffv1dec.c