Commit d26eeb0d authored by Peter Ross's avatar Peter Ross Committed by Michael Niedermayer

iff: recognise more DEEP colorspaces

Reviewed-by: 's avatarPaul B Mahol <onemda@gmail.com>
Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent 0c79a3d9
...@@ -137,6 +137,9 @@ static int iff_probe(AVProbeData *p) ...@@ -137,6 +137,9 @@ static int iff_probe(AVProbeData *p)
static const uint8_t deep_rgb24[] = {0, 0, 0, 3, 0, 1, 0, 8, 0, 2, 0, 8, 0, 3, 0, 8}; static const uint8_t deep_rgb24[] = {0, 0, 0, 3, 0, 1, 0, 8, 0, 2, 0, 8, 0, 3, 0, 8};
static const uint8_t deep_rgba[] = {0, 0, 0, 4, 0, 1, 0, 8, 0, 2, 0, 8, 0, 3, 0, 8}; static const uint8_t deep_rgba[] = {0, 0, 0, 4, 0, 1, 0, 8, 0, 2, 0, 8, 0, 3, 0, 8};
static const uint8_t deep_bgra[] = {0, 0, 0, 4, 0, 3, 0, 8, 0, 2, 0, 8, 0, 1, 0, 8};
static const uint8_t deep_argb[] = {0, 0, 0, 4, 0,17, 0, 8, 0, 1, 0, 8, 0, 2, 0, 8};
static const uint8_t deep_abgr[] = {0, 0, 0, 4, 0,17, 0, 8, 0, 3, 0, 8, 0, 2, 0, 8};
static int iff_read_header(AVFormatContext *s) static int iff_read_header(AVFormatContext *s)
{ {
...@@ -249,6 +252,12 @@ static int iff_read_header(AVFormatContext *s) ...@@ -249,6 +252,12 @@ static int iff_read_header(AVFormatContext *s)
st->codec->pix_fmt = AV_PIX_FMT_RGB24; st->codec->pix_fmt = AV_PIX_FMT_RGB24;
else if (fmt_size == sizeof(deep_rgba) && !memcmp(fmt, deep_rgba, sizeof(deep_rgba))) else if (fmt_size == sizeof(deep_rgba) && !memcmp(fmt, deep_rgba, sizeof(deep_rgba)))
st->codec->pix_fmt = AV_PIX_FMT_RGBA; st->codec->pix_fmt = AV_PIX_FMT_RGBA;
else if (fmt_size == sizeof(deep_bgra) && !memcmp(fmt, deep_bgra, sizeof(deep_bgra)))
st->codec->pix_fmt = AV_PIX_FMT_BGRA;
else if (fmt_size == sizeof(deep_argb) && !memcmp(fmt, deep_argb, sizeof(deep_argb)))
st->codec->pix_fmt = AV_PIX_FMT_ARGB;
else if (fmt_size == sizeof(deep_abgr) && !memcmp(fmt, deep_abgr, sizeof(deep_abgr)))
st->codec->pix_fmt = AV_PIX_FMT_ABGR;
else { else {
av_log_ask_for_sample(s, "unsupported color format\n"); av_log_ask_for_sample(s, "unsupported color format\n");
return AVERROR_PATCHWELCOME; return AVERROR_PATCHWELCOME;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment