summaryrefslogtreecommitdiff
path: root/kms++util/src/testpat.cpp
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-08-06 05:18:05 +0300
committerTomi Valkeinen <tomi.valkeinen@ti.com>2020-08-10 09:44:48 +0300
commitb397a5f6e035668a9d74f8af09c20cf947e811cf (patch)
tree22610c3d70b02598f381755282cbee6a1cbf4c9f /kms++util/src/testpat.cpp
parentcc8771b7dbefa8a813e3afaae79d2eefd46dff51 (diff)
kms++: Add support for the planar YUV formats
Add support for the 6 planar YUV formats (YUV and YVU, combined with 420, 422 or 444 subsampling) 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++util/src/testpat.cpp')
-rw-r--r--kms++util/src/testpat.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/kms++util/src/testpat.cpp b/kms++util/src/testpat.cpp
index c120de3..ac38673 100644
--- a/kms++util/src/testpat.cpp
+++ b/kms++util/src/testpat.cpp
@@ -120,6 +120,15 @@ static void draw_test_pattern_part(IFramebuffer& fb, unsigned start_y, unsigned
case PixelColorType::YUV:
switch (plane_info.xsub + plane_info.ysub) {
+ case 2:
+ for (y = start_y; y < end_y; y++) {
+ for (x = 0; x < w; x++) {
+ RGB pixel = get_test_pattern_pixel(fb, x, y);
+ draw_yuv444_pixel(fb, x, y, pixel.yuv(yuvt));
+ }
+ }
+ break;
+
case 3:
for (y = start_y; y < end_y; y++) {
for (x = 0; x < w; x += 2) {