[libcamera-devel] [PATCH v5 06/17] libcamera: ipu3: Merge IPA metadata controls

Jacopo Mondi jacopo at jmondi.org
Mon May 3 12:41:41 CEST 2021


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.

Signed-off-by: Jacopo Mondi <jacopo at jmondi.org>
---
 src/libcamera/pipeline/ipu3/ipu3.cpp | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp
index 88b7bd1e52c3..ade8ffbddb0e 100644
--- a/src/libcamera/pipeline/ipu3/ipu3.cpp
+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp
@@ -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))
-- 
2.31.1



More information about the libcamera-devel mailing list