diff options
author | Jacopo Mondi <jacopo@jmondi.org> | 2022-11-24 10:33:06 +0100 |
---|---|---|
committer | Jacopo Mondi <jacopo@jmondi.org> | 2022-12-09 08:57:41 +0100 |
commit | 9361cd1ffa15a14fd808d8e865658d2e88f2ca04 (patch) | |
tree | 52730d50ad2d882dd3518adf2670fbcdf026ecc7 /include | |
parent | a55bd143344dd4fe9326ca7d9c4ba8c5c665559a (diff) |
libcamera: camera_sensor: Apply flips at setFormat()
Augment the CameraSensor::setFormat() function to configure horizontal
and vertical flips before appllying the image format on the sensor.
Applying flips before format is crucial as they might change the Bayer
pattern ordering.
To allow users of the CameraSensor class to easily pass the requested
Transform add to the V4L2SubdeviceFormat class a 'transform' member, by
default initialized to Transform::Identity.
Moving the handling of H/V flips to the CameraSensor class allows to
remove quite some boilerplate code from the IPU3 and RaspberryPi
pipeline handlers.
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/libcamera/internal/v4l2_subdevice.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/libcamera/internal/v4l2_subdevice.h b/include/libcamera/internal/v4l2_subdevice.h index 69862de0..576faf97 100644 --- a/include/libcamera/internal/v4l2_subdevice.h +++ b/include/libcamera/internal/v4l2_subdevice.h @@ -20,6 +20,7 @@ #include <libcamera/color_space.h> #include <libcamera/geometry.h> +#include <libcamera/transform.h> #include "libcamera/internal/formats.h" #include "libcamera/internal/media_object.h" @@ -44,6 +45,7 @@ struct V4L2SubdeviceFormat { uint32_t mbus_code; Size size; std::optional<ColorSpace> colorSpace; + Transform transform = Transform::Identity; const std::string toString() const; uint8_t bitsPerPixel() const; |