[{"id":31032,"web_url":"https://patchwork.libcamera.org/comment/31032/","msgid":"<20240901203406.GA31148@pendragon.ideasonboard.com>","date":"2024-09-01T20:34:06","subject":"Re: [PATCH v5 12/18] libcamera: software_isp: Call\n\tAlgorithm::process","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Milan,\n\nThank you for the patch.\n\nOn Fri, Aug 30, 2024 at 09:25:48AM +0200, Milan Zamazal wrote:\n> This patch adds Algorithm::process call for the defined algorithms.\n> This is preparation only since there are currently no Algorithm based\n> algorithms defined.\n> \n> As software ISP currently doesn't produce any metadata, a dummy and\n> unused metadata instance is created to satisfy Algorithm::process API.\n> This should be changed in future.\n\ns/should/will/ as I suppose it's addressed later in the series ?\n\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\n> Signed-off-by: Milan Zamazal <mzamazal@redhat.com>\n> Reviewed-by: Umang Jain <umang.jain@ideasonboard.com>\n> Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>\n> ---\n>  src/ipa/simple/soft_simple.cpp | 13 ++++++++++++-\n>  1 file changed, 12 insertions(+), 1 deletion(-)\n> \n> diff --git a/src/ipa/simple/soft_simple.cpp b/src/ipa/simple/soft_simple.cpp\n> index d52242be..4b9201dc 100644\n> --- a/src/ipa/simple/soft_simple.cpp\n> +++ b/src/ipa/simple/soft_simple.cpp\n> @@ -287,10 +287,21 @@ void IPASoftSimple::prepare(const uint32_t frame)\n>  \t\talgo->prepare(context_, frame, frameContext, params_);\n>  }\n>  \n> -void IPASoftSimple::processStats([[maybe_unused]] const uint32_t frame,\n> +void IPASoftSimple::processStats(const uint32_t frame,\n>  \t\t\t\t [[maybe_unused]] const uint32_t bufferId,\n>  \t\t\t\t const ControlList &sensorControls)\n>  {\n> +\tIPAFrameContext &frameContext = context_.frameContexts.get(frame);\n> +\t/*\n> +\t * Software ISP currently does not produce any metadata. Use an empty\n> +\t * ControlList for now.\n> +\t *\n> +\t * \\todo Implement proper metadata handling\n> +\t */\n> +\tControlList metadata(controls::controls);\n> +\tfor (auto const &algo : algorithms())\n> +\t\talgo->process(context_, frame, frameContext, stats_, metadata);\n> +\n>  \tSwIspStats::Histogram histogram = stats_->yHistogram;\n>  \tif (ignoreUpdates_ > 0)\n>  \t\tblackLevel_.update(histogram);","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 08CF5C323E\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSun,  1 Sep 2024 20:34:42 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 3D9D0634C8;\n\tSun,  1 Sep 2024 22:34:41 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id B66F163466\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSun,  1 Sep 2024 22:34:39 +0200 (CEST)","from pendragon.ideasonboard.com (81-175-209-231.bb.dnainternet.fi\n\t[81.175.209.231])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id A8C7E51B;\n\tSun,  1 Sep 2024 22:33:28 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"BwhK1sUK\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1725222808;\n\tbh=+ViX3irt+v9F06Aay0yEx1RiTNvVjxLfPlrN02UYGog=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=BwhK1sUKKngBk9L1Yf5hOlMqlnFY3wo4qZ0qdXhvfX6BcH7hMThhLeLUZLNT5ppsK\n\tw55tGEP9wZKLn7+8dfNaKYoi8tXVBXgpQy95Elf9pziwJNEuFwNA29ftEdVPFxpclU\n\tZwzo/47fXpdK3YVk1ZHqakkNrQ2hdonuBVS8nroY=","Date":"Sun, 1 Sep 2024 23:34:06 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Milan Zamazal <mzamazal@redhat.com>","Cc":"libcamera-devel@lists.libcamera.org,\n\tUmang Jain <umang.jain@ideasonboard.com>,\n\tDaniel Scally <dan.scally@ideasonboard.com>","Subject":"Re: [PATCH v5 12/18] libcamera: software_isp: Call\n\tAlgorithm::process","Message-ID":"<20240901203406.GA31148@pendragon.ideasonboard.com>","References":"<20240830072554.180672-1-mzamazal@redhat.com>\n\t<20240830072554.180672-13-mzamazal@redhat.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20240830072554.180672-13-mzamazal@redhat.com>","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>"}},{"id":31082,"web_url":"https://patchwork.libcamera.org/comment/31082/","msgid":"<87a5go4xf5.fsf@redhat.com>","date":"2024-09-03T14:35:58","subject":"Re: [PATCH v5 12/18] libcamera: software_isp: Call\n\tAlgorithm::process","submitter":{"id":177,"url":"https://patchwork.libcamera.org/api/people/177/","name":"Milan Zamazal","email":"mzamazal@redhat.com"},"content":"Hi Laurent,\n\nthank you for reviews.\n\nLaurent Pinchart <laurent.pinchart@ideasonboard.com> writes:\n\n> Hi Milan,\n>\n> Thank you for the patch.\n>\n> On Fri, Aug 30, 2024 at 09:25:48AM +0200, Milan Zamazal wrote:\n>> This patch adds Algorithm::process call for the defined algorithms.\n>> This is preparation only since there are currently no Algorithm based\n>> algorithms defined.\n>> \n>> As software ISP currently doesn't produce any metadata, a dummy and\n>> unused metadata instance is created to satisfy Algorithm::process API.\n>> This should be changed in future.\n>\n> s/should/will/ as I suppose it's addressed later in the series ?\n\nIt is not.  There is\nhttps://patchwork.libcamera.org/project/libcamera/list/?series=4405 by\nKieran that introduces metadata to the simple pipeline.  Which would be\nworth to revive at some point once the basic refactoring is finished.\n\n> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n>\n>> Signed-off-by: Milan Zamazal <mzamazal@redhat.com>\n>> Reviewed-by: Umang Jain <umang.jain@ideasonboard.com>\n>> Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>\n>> ---\n>>  src/ipa/simple/soft_simple.cpp | 13 ++++++++++++-\n>>  1 file changed, 12 insertions(+), 1 deletion(-)\n>> \n>> diff --git a/src/ipa/simple/soft_simple.cpp b/src/ipa/simple/soft_simple.cpp\n>> index d52242be..4b9201dc 100644\n>> --- a/src/ipa/simple/soft_simple.cpp\n>> +++ b/src/ipa/simple/soft_simple.cpp\n>> @@ -287,10 +287,21 @@ void IPASoftSimple::prepare(const uint32_t frame)\n>>  \t\talgo->prepare(context_, frame, frameContext, params_);\n>>  }\n>>  \n>> -void IPASoftSimple::processStats([[maybe_unused]] const uint32_t frame,\n>> +void IPASoftSimple::processStats(const uint32_t frame,\n>>  \t\t\t\t [[maybe_unused]] const uint32_t bufferId,\n>>  \t\t\t\t const ControlList &sensorControls)\n>>  {\n>> +\tIPAFrameContext &frameContext = context_.frameContexts.get(frame);\n>> +\t/*\n>> +\t * Software ISP currently does not produce any metadata. Use an empty\n>> +\t * ControlList for now.\n>> +\t *\n>> +\t * \\todo Implement proper metadata handling\n>> +\t */\n>> +\tControlList metadata(controls::controls);\n>> +\tfor (auto const &algo : algorithms())\n>> +\t\talgo->process(context_, frame, frameContext, stats_, metadata);\n>> +\n>>  \tSwIspStats::Histogram histogram = stats_->yHistogram;\n>>  \tif (ignoreUpdates_ > 0)\n>>  \t\tblackLevel_.update(histogram);","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 C9C4ABF415\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue,  3 Sep 2024 14:36:09 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id B6A5D634E5;\n\tTue,  3 Sep 2024 16:36:08 +0200 (CEST)","from us-smtp-delivery-124.mimecast.com\n\t(us-smtp-delivery-124.mimecast.com [170.10.133.124])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id E7E50634A6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue,  3 Sep 2024 16:36:06 +0200 (CEST)","from mail-wr1-f71.google.com (mail-wr1-f71.google.com\n\t[209.85.221.71]) by relay.mimecast.com with ESMTP with STARTTLS\n\t(version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id\n\tus-mta-56-iNu0rXHfPbarMP2RiD7MoQ-1; Tue, 03 Sep 2024 10:36:02 -0400","by mail-wr1-f71.google.com with SMTP id\n\tffacd0b85a97d-3750b4feb9fso617338f8f.1\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 03 Sep 2024 07:36:02 -0700 (PDT)","from nuthatch (nat-pool-brq-t.redhat.com. [213.175.37.10])\n\tby smtp.gmail.com with ESMTPSA id\n\t5b1f17b1804b1-42c17fed40csm126102065e9.0.2024.09.03.07.35.59\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tTue, 03 Sep 2024 07:35:59 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=redhat.com header.i=@redhat.com\n\theader.b=\"clZFoaBP\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n\ts=mimecast20190719; t=1725374165;\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\tin-reply-to:in-reply-to:references:references;\n\tbh=4QVWsqUOilcZW3NmUwNirA6Y9kwsYRZD2XO4zlVchFs=;\n\tb=clZFoaBPcR99+oGh6R9ebCsTF6g6KUjWBLdT6Tlzo24npyyrp1pQT3GmlfHOhRua5j8WT5\n\tznFdgcOc3UDbF9Gr7A+8xNiyVNQ50QYEH17v8QW03QXv5AHNldSwCwd231lcitIMZCJCBk\n\tmsUghGMq+Ltlgp6BN+j8QSs/FbeVuYw=","X-MC-Unique":"iNu0rXHfPbarMP2RiD7MoQ-1","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20230601; t=1725374161; x=1725978961;\n\th=mime-version:user-agent:message-id:date:references:in-reply-to\n\t:subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date\n\t:message-id:reply-to;\n\tbh=4QVWsqUOilcZW3NmUwNirA6Y9kwsYRZD2XO4zlVchFs=;\n\tb=BQt+9wZfcYjFjZhnBhw/K/Wv1wIH43bt4GJqp4RMeIG9cd35SEKGmaKae49PR5PyLg\n\t0YFkpLbLu5iu1qmWl5fclN59ReSwGXLulHfYb4gnM8lRjO/F8y5qJ5Knm5S8v9qbSpk4\n\tj+Zz/z+mF78Gl8GUAvOmZpvzygOqX0pWrY2MgyK57koBGhMDdllreYDmVAgLcNmgnZIm\n\t/Zo0nBWk/SnT+vSfhcuj6k7uj2iJP9gP2QovVAIHAHIV8NjbNfmIDH0O5aBI3HMGLa4/\n\trbC7L+AABcXYKNZZhLCbsz1SKnSPJnOxrlcvrXiFo1XurnH5Dqj3w/XDNvtxtF0fdMjE\n\tdj0Q==","X-Gm-Message-State":"AOJu0YzXNx6+AymeRkT9Eb2NB0If+s7uZsGOKnNN0MYplnNPItUwTX1z\n\tPGKuJopWr9yPaj8Dvunsd7fVux8Ffq9ZM6tfKzs6TqR/c4CoVYNf3fd6ZQqL8xnXw5QURT/2KDO\n\tA68BWdwyKk7BdXVz1+utolzNMyc31movpbhmkXVm21npdegjtkp1US+4s+HUbBogZ2On2Mos=","X-Received":["by 2002:a5d:6190:0:b0:374:c7cd:8818 with SMTP id\n\tffacd0b85a97d-374c7cd8a12mr4741185f8f.22.1725374161077; \n\tTue, 03 Sep 2024 07:36:01 -0700 (PDT)","by 2002:a5d:6190:0:b0:374:c7cd:8818 with SMTP id\n\tffacd0b85a97d-374c7cd8a12mr4741172f8f.22.1725374160601; \n\tTue, 03 Sep 2024 07:36:00 -0700 (PDT)"],"X-Google-Smtp-Source":"AGHT+IFXntb5xEOusD8cW/2pRRLs3As6d3Q7dDJdvMRhMyuckzaschSC2+e+mIFzesJ4HYyVIqRYsQ==","From":"Milan Zamazal <mzamazal@redhat.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org,  Umang Jain\n\t<umang.jain@ideasonboard.com>,\n\tDaniel Scally <dan.scally@ideasonboard.com>","Subject":"Re: [PATCH v5 12/18] libcamera: software_isp: Call\n\tAlgorithm::process","In-Reply-To":"<20240901203406.GA31148@pendragon.ideasonboard.com> (Laurent\n\tPinchart's message of \"Sun, 1 Sep 2024 23:34:06 +0300\")","References":"<20240830072554.180672-1-mzamazal@redhat.com>\n\t<20240830072554.180672-13-mzamazal@redhat.com>\n\t<20240901203406.GA31148@pendragon.ideasonboard.com>","Date":"Tue, 03 Sep 2024 16:35:58 +0200","Message-ID":"<87a5go4xf5.fsf@redhat.com>","User-Agent":"Gnus/5.13 (Gnus v5.13)","MIME-Version":"1.0","X-Mimecast-Spam-Score":"0","X-Mimecast-Originator":"redhat.com","Content-Type":"text/plain","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>"}}]