diff --git a/libavcodec/dds.c b/libavcodec/dds.c index feaaba5a24..50350f1fbb 100644 --- a/libavcodec/dds.c +++ b/libavcodec/dds.c @@ -362,6 +362,10 @@ static int parse_pixel_format(AVCodecContext *avctx) } else if (bpp == 16 && r == 0xffff && g == 0 && b == 0 && a == 0) avctx->pix_fmt = AV_PIX_FMT_GRAY16LE; + else if (bpp == 16 && r == 0x7c00 && g == 0x3e0 && b == 0x1f && a == 0) + avctx->pix_fmt = AV_PIX_FMT_RGB555LE; + else if (bpp == 16 && r == 0x7c00 && g == 0x3e0 && b == 0x1f && a == 0x8000) + avctx->pix_fmt = AV_PIX_FMT_RGB555LE; // alpha ignored else if (bpp == 16 && r == 0xf800 && g == 0x7e0 && b == 0x1f && a == 0) avctx->pix_fmt = AV_PIX_FMT_RGB565LE; /* 24 bpp */