[libcamera-devel] [PATCH v4 07/16] libcamera: rkisp1: Do not over-write metadata

Jacopo Mondi jacopo at jmondi.org
Sat May 1 09:56:04 CEST 2021


Hi Kieran,

On Fri, Apr 30, 2021 at 08:10:40PM +0100, Kieran Bingham wrote:
> Hi Jacopo,
>
> On 30/04/2021 17:00, Jacopo Mondi wrote:
> > When a Request is completed upon receiving the IPA produced metadata,
> > the metadata associated with the Request are over-written, deleting
> > the information set at output buffer completion, such as the
> > SensorTimestamp.
> >
> > This commit applies to the RkISP1 pipeline handler the same change
> > applied to IPU3 in commit 13a7ed7b1f1f ("libcamera: ipu3: Do not
> > over-write metadata") but compared to that commit it uses the newly
> > introduced ControlList::merge() function.
>
> It sounds like 13a7ed7b1f1f ("libcamera: ipu3: Do not over-write
> metadata") has added a todo which was waiting for a .merge() to become
> available to solve this in the same way.
>
> With this series adding the .merge() Can/Should we update the IPU3 in
> the same way either as an extra patch on this series or make sure we do
> it on top?

Am I wrong or the IPA does not produce metadata at the moment ?

>
> --
> Kieran
>
> > Signed-off-by: Jacopo Mondi <jacopo at jmondi.org>
> > ---
> >  src/libcamera/pipeline/rkisp1/rkisp1.cpp | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> > index c75666391222..26f708242523 100644
> > --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> > +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> > @@ -365,7 +365,7 @@ void RkISP1CameraData::metadataReady(unsigned int frame, const ControlList &meta
> >  	if (!info)
> >  		return;
> >
> > -	info->request->metadata() = metadata;
> > +	info->request->metadata().merge(metadata);
> >  	info->metadataProcessed = true;
> >
> >  	pipe->tryCompleteRequest(info->request);
> >
>
> --
> Regards
> --
> Kieran


More information about the libcamera-devel mailing list