Do not try to read 16bit gray png files with alpha channel.
FFmpeg does not support gray16a.
Fixes the crash in ticket #644.
(cherry picked from commit 0c5fd6372e
)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:

committed by
Michael Niedermayer

parent
807342e1cf
commit
00d35e82b2
@@ -471,7 +471,8 @@ static int decode_frame(AVCodecContext *avctx,
|
|||||||
avctx->pix_fmt = PIX_FMT_MONOBLACK;
|
avctx->pix_fmt = PIX_FMT_MONOBLACK;
|
||||||
} else if (s->color_type == PNG_COLOR_TYPE_PALETTE) {
|
} else if (s->color_type == PNG_COLOR_TYPE_PALETTE) {
|
||||||
avctx->pix_fmt = PIX_FMT_PAL8;
|
avctx->pix_fmt = PIX_FMT_PAL8;
|
||||||
} else if (s->color_type == PNG_COLOR_TYPE_GRAY_ALPHA) {
|
} else if (s->bit_depth == 8 &&
|
||||||
|
s->color_type == PNG_COLOR_TYPE_GRAY_ALPHA) {
|
||||||
avctx->pix_fmt = PIX_FMT_GRAY8A;
|
avctx->pix_fmt = PIX_FMT_GRAY8A;
|
||||||
} else {
|
} else {
|
||||||
goto fail;
|
goto fail;
|
||||||
|
Reference in New Issue
Block a user