[RFC,v2,12/22,DNI] apps: cam: Print `MetadataListPlan` of camera
diff mbox series

Message ID 20250721104622.1550908-13-barnabas.pocze@ideasonboard.com
State New
Headers show
Series
  • libcamera: Add `MetadataList`
Related show

Commit Message

Barnabás Pőcze July 21, 2025, 10:46 a.m. UTC
When `--list-controls` is specified, print the set of supported metadata.
---
 src/apps/cam/camera_session.cpp | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

Patch
diff mbox series

diff --git a/src/apps/cam/camera_session.cpp b/src/apps/cam/camera_session.cpp
index f63fcb228..91ac3f1bf 100644
--- a/src/apps/cam/camera_session.cpp
+++ b/src/apps/cam/camera_session.cpp
@@ -228,6 +228,20 @@  void CameraSession::listControls() const
 			std::cout << std::endl;
 		}
 	}
+
+	for (const auto &[id, info] : camera_->metadata()) {
+		const auto *cid = controls::controls.at(id);
+
+		std::cout << "Metadata: [  out] " << cid->vendor() << "::" << cid->name()
+			  << " type:" << info.type
+			  << " size:";
+
+		if (info.isArray)
+			std::cout << info.numElements << "x";
+
+		std::cout << info.size << " alignment:" << info.alignment;
+		std::cout << std::endl;
+	}
 }
 
 void CameraSession::listProperties() const