[libcamera-devel] [PATCH 1/3] pipeline: uvcvideo: Add color space support

Laurent Pinchart laurent.pinchart at ideasonboard.com
Mon Aug 29 12:04:12 CEST 2022


Add support for color space to the uvcvideo pipeline handler. UVC
devices have a fixed color space per format, so only the validate()
function needs to be extended to retrieve the color space from the
kernel. There is no need to pass the value back to the driver in
configure().

Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
---
 src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
index 9cbf126aea57..2ae640a31f68 100644
--- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
+++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
@@ -159,6 +159,11 @@ CameraConfiguration::Status UVCCameraConfiguration::validate()
 	cfg.stride = format.planes[0].bpl;
 	cfg.frameSize = format.planes[0].size;
 
+	if (cfg.colorSpace != format.colorSpace) {
+		cfg.colorSpace = format.colorSpace;
+		status = Adjusted;
+	}
+
 	return status;
 }
 
-- 
Regards,

Laurent Pinchart



More information about the libcamera-devel mailing list