[libcamera-devel] [PATCH] pipeline: rpi: Account for Bayer packing when validating format
Kieran Bingham
kieran.bingham at ideasonboard.com
Wed Jul 5 18:52:05 CEST 2023
Quoting Naushir Patuck via libcamera-devel (2023-06-30 14:42:32)
> 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>
Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.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