sunrast: Add support for gray8 decoding.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
This commit is contained in:
parent
dae2ce361a
commit
4fbccfab23
@ -112,7 +112,7 @@ static int sunrast_decode_frame(AVCodecContext *avctx, void *data,
|
||||
avctx->pix_fmt = PIX_FMT_MONOWHITE;
|
||||
break;
|
||||
case 8:
|
||||
avctx->pix_fmt = PIX_FMT_PAL8;
|
||||
avctx->pix_fmt = maplength ? PIX_FMT_PAL8 : PIX_FMT_GRAY8;
|
||||
break;
|
||||
case 24:
|
||||
avctx->pix_fmt = (type == RT_FORMAT_RGB) ? PIX_FMT_RGB24 : PIX_FMT_BGR24;
|
||||
@ -140,13 +140,9 @@ static int sunrast_decode_frame(AVCodecContext *avctx, void *data,
|
||||
if (depth != 8 && maplength) {
|
||||
av_log(avctx, AV_LOG_WARNING, "useless colormap found or file is corrupted, trying to recover\n");
|
||||
|
||||
} else if (depth == 8) {
|
||||
} else if (maplength) {
|
||||
unsigned int len = maplength / 3;
|
||||
|
||||
if (!maplength) {
|
||||
av_log(avctx, AV_LOG_ERROR, "colormap expected\n");
|
||||
return -1;
|
||||
}
|
||||
if (maplength % 3 || maplength > 768) {
|
||||
av_log(avctx, AV_LOG_WARNING, "invalid colormap length\n");
|
||||
return -1;
|
||||
|
Loading…
Reference in New Issue
Block a user