{"id":22418,"url":"https://patchwork.libcamera.org/api/covers/22418/?format=json","web_url":"https://patchwork.libcamera.org/cover/22418/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20241219211010.103310-1-mzamazal@redhat.com>","date":"2024-12-19T21:10:05","name":"[v2,0/5] ipa: simple: Introduce metadata reporting","submitter":{"id":177,"url":"https://patchwork.libcamera.org/api/people/177/?format=json","name":"Milan Zamazal","email":"mzamazal@redhat.com"},"mbox":"https://patchwork.libcamera.org/cover/22418/mbox/","series":[{"id":4920,"url":"https://patchwork.libcamera.org/api/series/4920/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4920","date":"2024-12-19T21:10:05","name":"ipa: simple: Introduce metadata reporting","version":2,"mbox":"https://patchwork.libcamera.org/series/4920/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/22418/comments/","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id CD8BFBD7D8\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 19 Dec 2024 21:10:27 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id D2BDC68479;\n\tThu, 19 Dec 2024 22:10:26 +0100 (CET)","from us-smtp-delivery-124.mimecast.com\n\t(us-smtp-delivery-124.mimecast.com [170.10.129.124])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 8EECB68471\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 19 Dec 2024 22:10:24 +0100 (CET)","from mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com\n\t(ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63])\n\tby relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3,\n\tcipher=TLS_AES_256_GCM_SHA384) id us-mta-479-hpOorTGONQ-oAtYCsMrU4Q-1;\n\tThu, 19 Dec 2024 16:10:19 -0500","from mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com\n\t(mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.4])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\tkey-exchange X25519 server-signature RSA-PSS (2048 bits)\n\tserver-digest SHA256) (No client certificate requested)\n\tby mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix)\n\twith ESMTPS id A5590195609D; Thu, 19 Dec 2024 21:10:18 +0000 (UTC)","from nuthatch.redhat.com (unknown [10.45.224.37])\n\tby mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix)\n\twith ESMTP id CE2DE300F9B5; Thu, 19 Dec 2024 21:10:16 +0000 (UTC)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=redhat.com header.i=@redhat.com\n\theader.b=\"YpFP+CSb\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n\ts=mimecast20190719; t=1734642623;\n\th=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n\tto:to:cc:cc:mime-version:mime-version:content-type:content-type:\n\tcontent-transfer-encoding:content-transfer-encoding;\n\tbh=Uf4gBN0ZvpYwIkMbhn8KswbtpedXWWNv9puo5ThpWlQ=;\n\tb=YpFP+CSblHSZXhPrsR94i99JqV45e0rOcaKTkzgaHjXkwQxYT5cNO9QTNtDqG+x1nlyPJW\n\tx5UseshThXk96c/JnF7nbjDoMcOkrCXgrFuvmYgtNrN7W9WgSBWuNo4O90yGhAGegT8gcs\n\tnO9t1gqS/yV+JQ9jQm91jOEItyiPRaw=","X-MC-Unique":"hpOorTGONQ-oAtYCsMrU4Q-1","X-Mimecast-MFC-AGG-ID":"hpOorTGONQ-oAtYCsMrU4Q","From":"Milan Zamazal <mzamazal@redhat.com>","To":"libcamera-devel@lists.libcamera.org","Cc":"Milan Zamazal <mzamazal@redhat.com>,\n\tKieran Bingham <kieran.bingham@ideasonboard.com>,\n\tLaurent Pinchart <laurent.pinchart@ideasonboard.com>","Subject":"[PATCH v2 0/5] ipa: simple: Introduce metadata reporting","Date":"Thu, 19 Dec 2024 22:10:05 +0100","Message-ID":"<20241219211010.103310-1-mzamazal@redhat.com>","MIME-Version":"1.0","X-Scanned-By":"MIMEDefang 3.4.1 on 10.30.177.4","X-Mimecast-Spam-Score":"0","X-Mimecast-MFC-PROC-ID":"slklxDNlgo1AoLWKTKU_sJcf5-aYhtB97fBV16ef9cc_1734642618","X-Mimecast-Originator":"redhat.com","Content-Transfer-Encoding":"8bit","content-type":"text/plain; charset=\"US-ASCII\"; x-default=true","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Provide metadata reporting for the software ISP. Initially the Black\nLevels, ColourGains and Contrast are reported, but also serve as a\ndirection to add further metadata or internal reporting of the software\nISP.\n\nRunning cam -c1 -C10 --metadata now produces the following:\n\n1668.359684 (14.95 fps) cam0-stream0 seq: 000004 bytesused: 15069888\n\tSensorBlackLevels = [ 4096, 4096, 4096, 4096 ]\n\tColourGains = [ 0.316406, 0.299805 ]\n\tSensorTimestamp = 1668359684000\n\nChanges in v2:\n- Taken over from Kieran.\n- Updated for master.\n- Black level is reported as uint16_t, according to the control\n  documentation.\n- Contrast value is reported in metadata.\n- The metadata used to proces the image is reported rather than the\n  metadata determined from the image.\n- Metadata is reported using a new signal rather than (ab)using\n  setIspParams; this change is less or more needed due to changed simple\n  IPA structure since v1.\n- Frame -> request mapping is introduced to make sure the metadata is\n  assigned to the right request.\n\nKieran Bingham (3):\n  ipa: simple: softisp: Extend to pass metadata\n  ipa: simple: Report the ColourGains in metadata\n  ipa: simple: Report black levels in metadata\n\nMilan Zamazal (2):\n  libcamera: software_isp: Track frames and requests\n  ipa: simple: Report contrast in metadata\n\n .../internal/software_isp/software_isp.h      |   2 +\n include/libcamera/ipa/soft.mojom              |   1 +\n src/ipa/simple/algorithms/awb.cpp             |  11 +-\n src/ipa/simple/algorithms/blc.cpp             |   9 +-\n src/ipa/simple/algorithms/lut.cpp             |  11 ++\n src/ipa/simple/algorithms/lut.h               |   5 +\n src/ipa/simple/soft_simple.cpp                |   7 +-\n src/libcamera/pipeline/simple/simple.cpp      | 108 +++++++++++++++++-\n src/libcamera/software_isp/software_isp.cpp   |  11 ++\n 9 files changed, 151 insertions(+), 14 deletions(-)"}