diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2020-08-06 05:18:06 +0300 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2020-08-10 09:44:48 +0300 |
commit | 68cd670ca4920f5bf7fc1f05c8cc0ce138ec7f39 (patch) | |
tree | 141efea303f63b9b65a169e2dcf9fe4db86c9478 /kms++ | |
parent | b397a5f6e035668a9d74f8af09c20cf947e811cf (diff) |
kms++: Add support for missing 8 -and 16-bit RGB formats
Add support for the RGB332, XRGB1555 and XRGB4444 formats to the
PixelFormat class, the Python API, and the drawing utilities.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'kms++')
-rw-r--r-- | kms++/inc/kms++/pixelformats.h | 5 | ||||
-rw-r--r-- | kms++/src/pixelformats.cpp | 9 |
2 files changed, 11 insertions, 3 deletions
diff --git a/kms++/inc/kms++/pixelformats.h b/kms++/inc/kms++/pixelformats.h index 746f9e2..4e453a2 100644 --- a/kms++/inc/kms++/pixelformats.h +++ b/kms++/inc/kms++/pixelformats.h @@ -45,9 +45,14 @@ enum class PixelFormat : uint32_t RGB888 = MakeFourCC("RG24"), BGR888 = MakeFourCC("BG24"), + RGB332 = MakeFourCC("RGB8"), + RGB565 = MakeFourCC("RG16"), BGR565 = MakeFourCC("BG16"), + XRGB4444 = MakeFourCC("XR12"), + XRGB1555 = MakeFourCC("XR15"), + ARGB4444 = MakeFourCC("AR12"), ARGB1555 = MakeFourCC("AR15"), diff --git a/kms++/src/pixelformats.cpp b/kms++/src/pixelformats.cpp index fe86fca..2c60c1e 100644 --- a/kms++/src/pixelformats.cpp +++ b/kms++/src/pixelformats.cpp @@ -24,9 +24,15 @@ static const map<PixelFormat, PixelFormatInfo> format_info_array = { { PixelFormat::YVU422, { PixelColorType::YUV, 3, { { 8, 1, 1, }, { 8, 2, 1 }, { 8, 2, 1 } }, } }, { PixelFormat::YUV444, { PixelColorType::YUV, 3, { { 8, 1, 1, }, { 8, 1, 1 }, { 8, 1, 1 } }, } }, { PixelFormat::YVU444, { PixelColorType::YUV, 3, { { 8, 1, 1, }, { 8, 1, 1 }, { 8, 1, 1 } }, } }, + /* RGB8 */ + { PixelFormat::RGB332, { PixelColorType::RGB, 1, { { 8, 1, 1 } }, } }, /* RGB16 */ { PixelFormat::RGB565, { PixelColorType::RGB, 1, { { 16, 1, 1 } }, } }, { PixelFormat::BGR565, { PixelColorType::RGB, 1, { { 16, 1, 1 } }, } }, + { PixelFormat::XRGB4444, { PixelColorType::RGB, 1, { { 16, 1, 1 } }, } }, + { PixelFormat::XRGB1555, { PixelColorType::RGB, 1, { { 16, 1, 1 } }, } }, + { PixelFormat::ARGB4444, { PixelColorType::RGB, 1, { { 16, 1, 1 } }, } }, + { PixelFormat::ARGB1555, { PixelColorType::RGB, 1, { { 16, 1, 1 } }, } }, /* RGB24 */ { PixelFormat::RGB888, { PixelColorType::RGB, 1, { { 24, 1, 1 } }, } }, { PixelFormat::BGR888, { PixelColorType::RGB, 1, { { 24, 1, 1 } }, } }, @@ -50,9 +56,6 @@ static const map<PixelFormat, PixelFormatInfo> format_info_array = { { PixelFormat::ABGR2101010, { PixelColorType::RGB, 1, { { 32, 1, 1 } }, } }, { PixelFormat::RGBA1010102, { PixelColorType::RGB, 1, { { 32, 1, 1 } }, } }, { PixelFormat::BGRA1010102, { PixelColorType::RGB, 1, { { 32, 1, 1 } }, } }, - - { PixelFormat::ARGB4444, { PixelColorType::RGB, 1, { { 16, 1, 1 } }, } }, - { PixelFormat::ARGB1555, { PixelColorType::RGB, 1, { { 16, 1, 1 } }, } }, }; const struct PixelFormatInfo& get_pixel_format_info(PixelFormat format) |