[libcamera-devel] [PATCH] pipeline: raspberrypi: Set sensor default orientation before configure()
Naushir Patuck
naush at raspberrypi.com
Thu Aug 27 12:17:17 CEST 2020
Hi Kieran,
On Thu, 27 Aug 2020 at 10:57, Kieran Bingham
<kieran.bingham at ideasonboard.com> wrote:
>
> Hi Naush,
>
> On 27/08/2020 09:30, Naushir Patuck wrote:
> > Hi all,
> >
> > Another gentle ping for a review and submission of this patch please.
>
> This has a tag from both me and Laurent, so I don't see any reason it
> can't already be in.
Yes, this can go in as-is. Thanks!
>
> We'll have to look at how to optimise the integration paths for
> contributions, as we of course just push our own patches after review.
>
> I wonder if it would help to make a pull-request (git-request-pull) when
> a series is ready.
>
> I don't want to add extra burden to you though, and I can't see any
> reason not to apply this now.
>
I do not have a problem doing an extra git-request-pull when a patch
is ready if that helps the workflow for you and the team. I'm sure
other external contributors would not have a problem either :) Let me
know if this is the preferred way going forward.
Regards,
Naush
> Pushing ...
>
>
> I'll try to work through the status of the other raw patches now.
> --
> Kieran
>
>
> > Thanks,
> > Naush
> >
> > On Fri, 7 Aug 2020 at 13:12, Naushir Patuck <naush at raspberrypi.com> wrote:
> >>
> >> Hi all,
> >>
> >> Just a gentle ping for the below change to be submitted when you can.
> >>
> >> Regards,
> >> Naush
> >>
> >> On Tue, 21 Jul 2020 at 10:23, Naushir Patuck <naush at raspberrypi.com> wrote:
> >>>
> >>> The default sensor orientation must be set early on in match() to ensure
> >>> generateConfiguration() and configure() return out the correct Bayer
> >>> ordering to the application. This is particularly important for RAW
> >>> capture streams.
> >>>
> >>> Signed-off-by: Naushir Patuck <naush at raspberrypi.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 bf1c7714..e9084afd 100644
> >>> --- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> >>> +++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> >>> @@ -962,6 +962,13 @@ 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!
> >>> @@ -1165,13 +1172,6 @@ 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) {
> >>> --
> >>> 2.25.1
> >>>
> > _______________________________________________
> > libcamera-devel mailing list
> > libcamera-devel at lists.libcamera.org
> > https://lists.libcamera.org/listinfo/libcamera-devel
> >
>
> --
> Regards
> --
> Kieran
More information about the libcamera-devel
mailing list