libcamera: ipu3: Merge IPA metadata controls

When a Request is completed upon receiving the IPA produced metadata,
they should be merged with the metadata set by the pipeline handler
before reporting them to applications.

Use ControlList::merge() to collect the IPA produced controls to the
request's metadata.

Reviewed-by: Hirokazu Honda <hiroh@chromium.org>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
This commit is contained in:
Jacopo Mondi
2021-05-03 11:44:18 +02:00
parent cb43c18040
commit d9a68af06d

View File

@@ -1190,11 +1190,8 @@ void IPU3CameraData::queueFrameAction(unsigned int id,
if (!info)
break;
/*
* \todo Parse the value of the controls returned by the IPA
* in action.controls to register additional metadata.
*/
Request *request = info->request;
request->metadata().merge(action.controls);
info->metadataProcessed = true;
if (frameInfos_.tryComplete(info))