[libcamera-devel] [PATCH] pipeline: rpi: Account for Bayer packing when validating format
Naushir Patuck
naush at raspberrypi.com
Fri Jun 30 15:42:32 CEST 2023
RPiCameraConfiguration::validate() did not account for user supplied
Bayer packing when validating the RAW stream configuration. Fix this
by seeing what packing (if any) has been specified selecting the output
RAW stream format.
Fixes: 6c71ee1f1530 ("pipeline: raspberrypi: Introduce PipelineHandlerBase class")
Signed-off-by: Naushir Patuck <naush at raspberrypi.com>
---
src/libcamera/pipeline/rpi/common/pipeline_base.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp
index df7482920e75..2eb71beaff55 100644
--- a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp
+++ b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp
@@ -288,8 +288,8 @@ CameraConfiguration::Status RPiCameraConfiguration::validate()
unsigned int bitDepth = info.isValid() ? info.bitsPerPixel : defaultRawBitDepth;
V4L2SubdeviceFormat sensorFormat = findBestFormat(data_->sensorFormats_, cfg.size, bitDepth);
- rawFormat.size = sensorFormat.size;
- rawFormat.fourcc = raw.dev->toV4L2PixelFormat(cfg.pixelFormat);
+ BayerFormat::Packing packing = BayerFormat::fromPixelFormat(cfg.pixelFormat).packing;
+ rawFormat = PipelineHandlerBase::toV4L2DeviceFormat(raw.dev, sensorFormat, packing);
int ret = raw.dev->tryFormat(&rawFormat);
if (ret)
--
2.34.1
More information about the libcamera-devel
mailing list