[PATCH v2 0/4] libcamera: rkisp1: Plumb i.MX8MP DW100 dewarper

Kieran Bingham kieran.bingham at ideasonboard.com
Mon May 20 14:22:03 CEST 2024


Quoting Umang Jain (2024-05-19 12:56:18)
> This series intends to support i.MX8MP DW100 dewarper in rkisp1 pipeline
> handler.
> 
> Patch 1/4 prepares the rkisp1 pipeline handler to register controls
> for the camera, outside of the IPA. The dewarper will let us support
> scaler crop - which will be registered as camera controls.
> 
> Patch 2/4 is also a prepartory patch to accept scaler crop rectangles
> for the converter_v4l2_m2m on each stream.
> 
> Patch 3/4 adds a base RkISP1Dewarper class inheriting from
> converter_v4l2_m2m. This provides a scaler crop setting helper.
> 
> Patch 4/4 finally plumbs the dewarper in the rkisp1 pipeline handler.
> If the scaler crop control is found set in the request, it is applied
> on the dewarper.
> 
> The series is tested on i.MX8MP and cam utility, by setting scaler crop
> control via capture script.

Presently this series fails CI with some compile errors picked up by
clang:

https://gitlab.freedesktop.org/camera/libcamera/-/jobs/58928404


> 
> Additional development:
> ----------------------
> 
> Initially when I developed, I added support to load a dewarp config file
> via environment variables which then can be used to set
> V4L2_CID_DW100_DEWARPING_16x16_VERTEX_MAP control. However, it has
> needs adhoc development to support v4l2 compound controls (which
> also I tried) but ultimately I failed to test, if this control was
> really working for me. Hence, I decided to send this series without
> that development and hope it can be done on top of this.

I would expect that such topics were likely covered when Xavier last
looked at this:

 https://patchwork.libcamera.org/project/libcamera/list/?series=3477&archive=both&state=*

That was back in 2022, but I think it would be beneficial if you could
try to apply that series and take a look.

--
Regards

Kieran



> 
> Changes in v2:
> - Fix raw capture configuration, disable dewarper in that case
> 
> Umang Jain (4):
>   libcamera: rkisp1: Prepare for additional camera controls
>   libcamera: converter_v4l2_m2m: Support crop selection
>   libcamera: rkisp1: Add base class DW100 dewarper
>   libcamera: rkisp1: Plumb through RkISP1Dewarper
> 
>  .../internal/converter/converter_v4l2_m2m.h   |   5 +
>  .../converter/converter_v4l2_m2m.cpp          |  26 +++
>  src/libcamera/pipeline/rkisp1/meson.build     |   1 +
>  src/libcamera/pipeline/rkisp1/rkisp1.cpp      | 165 +++++++++++++++++-
>  .../pipeline/rkisp1/rkisp1_dewarper.cpp       |  38 ++++
>  .../pipeline/rkisp1/rkisp1_dewarper.h         |  25 +++
>  src/libcamera/pipeline/rkisp1/rkisp1_path.cpp |  12 +-
>  src/libcamera/pipeline/rkisp1/rkisp1_path.h   |  14 ++
>  8 files changed, 275 insertions(+), 11 deletions(-)
>  create mode 100644 src/libcamera/pipeline/rkisp1/rkisp1_dewarper.cpp
>  create mode 100644 src/libcamera/pipeline/rkisp1/rkisp1_dewarper.h
> 
> -- 
> 2.44.0
>


More information about the libcamera-devel mailing list