[PATCH 5/7] pipeline: rkisp1: Reorder sensorInfo collection code
Jacopo Mondi
jacopo.mondi at ideasonboard.com
Thu Nov 21 16:01:39 CET 2024
Hi Stefan
On Wed, Nov 20, 2024 at 09:57:44AM +0100, Stefan Klug wrote:
> The sensorInfo (specifically the crop rectangle of the selected sensor
> mode) is collected to be passed to the IPA later. In an upcoming patch
> that data will also be needed for correct ScalerCrop handling. Move the
> collection of the sensorInfo before the dewarper configuration step and
> refactor the code a bit.
>
> Signed-off-by: Stefan Klug <stefan.klug at ideasonboard.com>
> ---
> src/libcamera/pipeline/rkisp1/rkisp1.cpp | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> index 6491a48ee83c..4a226d9b809f 100644
> --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> @@ -844,6 +844,11 @@ int PipelineHandlerRkISP1::configure(Camera *camera, CameraConfiguration *c)
> << "ISP output pad configured with " << format
> << " crop " << outputCrop;
>
> + IPACameraSensorInfo sensorInfo;
> + ret = data->sensor_->sensorInfo(&sensorInfo);
> + if (ret)
> + return ret;
> +
> std::map<unsigned int, IPAStream> streamConfig;
> std::vector<std::reference_wrapper<StreamConfiguration>> outputCfgs;
>
> @@ -883,14 +888,9 @@ int PipelineHandlerRkISP1::configure(Camera *camera, CameraConfiguration *c)
> return ret;
>
> /* Inform IPA of stream configuration and sensor controls. */
> - ipa::rkisp1::IPAConfigInfo ipaConfig{};
> -
> - ret = data->sensor_->sensorInfo(&ipaConfig.sensorInfo);
You could move the declaration of ipaConfig up as well and still pass
&ipaConfig.sensorInfo to sensorInfo() to avoid a copy.
It's however a nit
Reviewed-by: Jacopo Mondi <jacopo.mondi at ideasonboard.com>
Thanks
j
> - if (ret)
> - return ret;
> -
> - ipaConfig.sensorControls = data->sensor_->controls();
> - ipaConfig.paramFormat = paramFormat.fourcc;
> + ipa::rkisp1::IPAConfigInfo ipaConfig{ sensorInfo,
> + data->sensor_->controls(),
> + paramFormat.fourcc };
>
> ret = data->ipa_->configure(ipaConfig, streamConfig, &data->ipaControls_);
> if (ret) {
> --
> 2.43.0
>
More information about the libcamera-devel
mailing list