[libcamera-devel] [PATCH] py: cam.py: Fix duplicate metadata output if more than one steam
Daniel Oakley
daniel.oakley at ideasonboard.com
Thu Jan 12 18:34:11 CET 2023
Currently, if there are multiple steams, the --metadata flag will
print the metadata for each request multiple times.
Moving the metadata print logic outside the steam for loop this will
no longer occur.
Signed-off-by: Daniel Oakley <daniel.oakley at ideasonboard.com>
---
src/py/cam/cam.py | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/py/cam/cam.py b/src/py/cam/cam.py
index 2701d937..967a72f5 100755
--- a/src/py/cam/cam.py
+++ b/src/py/cam/cam.py
@@ -266,6 +266,11 @@ class CaptureState:
ctx.last = ts
ctx.fps = fps
+ if ctx.opt_metadata:
+ reqmeta = req.metadata
+ for ctrl, val in reqmeta.items():
+ print(f'\t{ctrl} = {val}')
+
for stream, fb in buffers.items():
stream_name = ctx.stream_names[stream]
@@ -284,11 +289,6 @@ class CaptureState:
'/'.join([str(p.bytes_used) for p in meta.planes]),
crcs))
- if ctx.opt_metadata:
- reqmeta = req.metadata
- for ctrl, val in reqmeta.items():
- print(f'\t{ctrl} = {val}')
-
if ctx.opt_save_frames:
with libcamera.utils.MappedFrameBuffer(fb) as mfb:
filename = 'frame-{}-{}-{}.data'.format(ctx.id, stream_name, ctx.reqs_completed)
--
2.38.2
More information about the libcamera-devel
mailing list