From 723fa18fb91b2f82ab0b29cab0e076470530f611 Mon Sep 17 00:00:00 2001 From: Robert Mader Date: Fri, 11 Oct 2024 20:13:24 +0200 Subject: [PATCH 06/13] pipeline: simple: Consider output sizes when choosing pipe config In order to avoid having to adjust the size further down below which again can break user assumptions. Notably, without this the capture size of 1920x1080 gets adjusted to 1912x1080 when used with the swISP using a bayer pattern width of 4, breaking users like Gstreamer down the line. Closes https://bugs.libcamera.org/show_bug.cgi?id=236 Signed-off-by: Robert Mader --- src/libcamera/pipeline/simple/simple.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/libcamera/pipeline/simple/simple.cpp b/src/libcamera/pipeline/simple/simple.cpp index c19ce17d4..09310dc02 100644 --- a/src/libcamera/pipeline/simple/simple.cpp +++ b/src/libcamera/pipeline/simple/simple.cpp @@ -1159,7 +1159,8 @@ CameraConfiguration::Status SimpleCameraConfiguration::validate() const Size &size = pipeConfig->captureSize; if (size.width >= maxStreamSize.width && - size.height >= maxStreamSize.height) { + size.height >= maxStreamSize.height && + pipeConfig->outputSizes.contains(maxStreamSize)) { if (!pipeConfig_ || size < pipeConfig_->captureSize) pipeConfig_ = pipeConfig; } -- 2.49.0