From 9d30690f20343ed3057fe4abf82009598d320ce5 Mon Sep 17 00:00:00 2001 From: Paul B Mahol Date: Fri, 10 Jun 2016 13:01:26 +0200 Subject: [PATCH] swscale: add input support for gbrap10 pixel format Signed-off-by: Paul B Mahol --- libswscale/input.c | 6 ++++++ libswscale/utils.c | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/libswscale/input.c b/libswscale/input.c index eed0f49b0a..14ab5abb3a 100644 --- a/libswscale/input.c +++ b/libswscale/input.c @@ -978,6 +978,7 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c) case AV_PIX_FMT_GBRP9LE: c->readChrPlanar = planar_rgb9le_to_uv; break; + case AV_PIX_FMT_GBRAP10LE: case AV_PIX_FMT_GBRP10LE: c->readChrPlanar = planar_rgb10le_to_uv; break; @@ -995,6 +996,7 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c) case AV_PIX_FMT_GBRP9BE: c->readChrPlanar = planar_rgb9be_to_uv; break; + case AV_PIX_FMT_GBRAP10BE: case AV_PIX_FMT_GBRP10BE: c->readChrPlanar = planar_rgb10be_to_uv; break; @@ -1258,6 +1260,8 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c) case AV_PIX_FMT_GBRP9LE: c->readLumPlanar = planar_rgb9le_to_y; break; + case AV_PIX_FMT_GBRAP10LE: + c->readAlpPlanar = planar_rgb10le_to_a; case AV_PIX_FMT_GBRP10LE: c->readLumPlanar = planar_rgb10le_to_y; break; @@ -1277,6 +1281,8 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c) case AV_PIX_FMT_GBRP9BE: c->readLumPlanar = planar_rgb9be_to_y; break; + case AV_PIX_FMT_GBRAP10BE: + c->readAlpPlanar = planar_rgb10be_to_a; case AV_PIX_FMT_GBRP10BE: c->readLumPlanar = planar_rgb10be_to_y; break; diff --git a/libswscale/utils.c b/libswscale/utils.c index 63a8226332..576d8f0d5a 100644 --- a/libswscale/utils.c +++ b/libswscale/utils.c @@ -218,6 +218,8 @@ static const FormatEntry format_entries[AV_PIX_FMT_NB] = { [AV_PIX_FMT_GBRP9BE] = { 1, 1 }, [AV_PIX_FMT_GBRP10LE] = { 1, 1 }, [AV_PIX_FMT_GBRP10BE] = { 1, 1 }, + [AV_PIX_FMT_GBRAP10LE] = { 1, 0 }, + [AV_PIX_FMT_GBRAP10BE] = { 1, 0 }, [AV_PIX_FMT_GBRP12LE] = { 1, 1 }, [AV_PIX_FMT_GBRP12BE] = { 1, 1 }, [AV_PIX_FMT_GBRAP12LE] = { 1, 0 }, @@ -1099,6 +1101,9 @@ static enum AVPixelFormat alphaless_fmt(enum AVPixelFormat fmt) case AV_PIX_FMT_GBRAP: return AV_PIX_FMT_GBRP; + case AV_PIX_FMT_GBRAP10LE: return AV_PIX_FMT_GBRP10; + case AV_PIX_FMT_GBRAP10BE: return AV_PIX_FMT_GBRP10; + case AV_PIX_FMT_GBRAP12LE: return AV_PIX_FMT_GBRP12; case AV_PIX_FMT_GBRAP12BE: return AV_PIX_FMT_GBRP12; @@ -1370,6 +1375,7 @@ av_cold int sws_init_context(SwsContext *c, SwsFilter *srcFilter, srcFormat != AV_PIX_FMT_RGB4_BYTE && srcFormat != AV_PIX_FMT_BGR4_BYTE && srcFormat != AV_PIX_FMT_GBRP9BE && srcFormat != AV_PIX_FMT_GBRP9LE && srcFormat != AV_PIX_FMT_GBRP10BE && srcFormat != AV_PIX_FMT_GBRP10LE && + srcFormat != AV_PIX_FMT_GBRAP10BE && srcFormat != AV_PIX_FMT_GBRAP10LE && srcFormat != AV_PIX_FMT_GBRP12BE && srcFormat != AV_PIX_FMT_GBRP12LE && srcFormat != AV_PIX_FMT_GBRAP12BE && srcFormat != AV_PIX_FMT_GBRAP12LE && srcFormat != AV_PIX_FMT_GBRP14BE && srcFormat != AV_PIX_FMT_GBRP14LE &&