[libcamera-devel] [PATCH v5 1/8] libcamera: pipeline: raspberrypi: Revert "Set sensor default orientation before configure()"
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Tue Sep 1 01:36:35 CEST 2020
Hi David,
Thank you for the patch.
On Sat, Aug 29, 2020 at 12:54:22PM +0100, David Plowman wrote:
> This reverts commit 1e8c91b65695449c5246d17ba7dc439c8058b781.
>
> Now that we shall be implementing application-defined 2D transforms
> it's no longer possible to set the sensor orientation so early on. We
> have to wait until we have the CameraConfiguration object as that's
> where the application puts its choice of transform.
>
> Signed-off-by: David Plowman <david.plowman at raspberrypi.com>
Makes sense.
Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> ---
> src/libcamera/pipeline/raspberrypi/raspberrypi.cpp | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> index c1451e7..42c9caa 100644
> --- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> +++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> @@ -960,13 +960,6 @@ bool PipelineHandlerRPi::match(DeviceEnumerator *enumerator)
> /* Initialize the camera properties. */
> data->properties_ = data->sensor_->properties();
>
> - /* Configure the H/V flip controls based on the sensor rotation. */
> - ControlList ctrls(data->unicam_[Unicam::Image].dev()->controls());
> - int32_t rotation = data->properties_.get(properties::Rotation);
> - ctrls.set(V4L2_CID_HFLIP, static_cast<int32_t>(!!rotation));
> - ctrls.set(V4L2_CID_VFLIP, static_cast<int32_t>(!!rotation));
> - data->unicam_[Unicam::Image].dev()->setControls(&ctrls);
> -
> /*
> * List the available output streams.
> * Currently cannot do Unicam streams!
> @@ -1171,6 +1164,13 @@ int RPiCameraData::configureIPA()
> { V4L2_CID_EXPOSURE, result.data[1] } });
> sensorMetadata_ = result.data[2];
> }
> +
> + /* Configure the H/V flip controls based on the sensor rotation. */
> + ControlList ctrls(unicam_[Unicam::Image].dev()->controls());
> + int32_t rotation = sensor_->properties().get(properties::Rotation);
> + ctrls.set(V4L2_CID_HFLIP, static_cast<int32_t>(!!rotation));
> + ctrls.set(V4L2_CID_VFLIP, static_cast<int32_t>(!!rotation));
> + unicam_[Unicam::Image].dev()->setControls(&ctrls);
> }
>
> if (result.operation & RPI_IPA_CONFIG_SENSOR) {
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list