[libcamera-devel] [PATCH 1/1] pipeline: raspberrypi: Detect monochrome "R" formats as being raw
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Tue Oct 4 21:59:30 CEST 2022
Hi David,
Thank you for the patch.
On Mon, Aug 15, 2022 at 03:16:37PM +0100, David Plowman via libcamera-devel wrote:
> The "R" pixel formats (R8, R10, R10_CSI2P etc.) record the associated
> colour space as being YUV rather than RAW, meaning that the code was
> not detecting them as being raw formats.
>
> In the case of Raspberry Pi, we deal only with raw formats, so the
> revised test must work correctly for both these and the standard Bayer
> formats.
That seems fine to me. We'll still need a more generic solution for
platforms that can capture processed greyscale images, but that's for
later.
Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> Signed-off-by: David Plowman <david.plowman at raspberrypi.com>
> ---
> src/libcamera/pipeline/raspberrypi/raspberrypi.cpp | 14 ++------------
> 1 file changed, 2 insertions(+), 12 deletions(-)
>
> diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> index e895584d..fae8e45e 100644
> --- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> +++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> @@ -105,18 +105,8 @@ V4L2DeviceFormat toV4L2DeviceFormat(const V4L2VideoDevice *dev,
>
> bool isRaw(const PixelFormat &pixFmt)
> {
> - /*
> - * The isRaw test might be redundant right now the pipeline handler only
> - * supports RAW sensors. Leave it in for now, just as a sanity check.
> - */
> - if (!pixFmt.isValid())
> - return false;
> -
> - const PixelFormatInfo &info = PixelFormatInfo::info(pixFmt);
> - if (!info.isValid())
> - return false;
> -
> - return info.colourEncoding == PixelFormatInfo::ColourEncodingRAW;
> + /* This test works for both Bayer and raw mono formats. */
> + return BayerFormat::fromPixelFormat(pixFmt).isValid();
> }
>
> double scoreFormat(double desired, double actual)
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list