From patchwork Wed Aug 11 06:12:54 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Siyuan Fan X-Patchwork-Id: 13294 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id E42F3C3240 for ; Wed, 11 Aug 2021 06:13:35 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 454C868886; Wed, 11 Aug 2021 08:13:35 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=foxmail.com header.i=@foxmail.com header.b="gXIq/fmp"; dkim-atps=neutral Received: from out203-205-221-202.mail.qq.com (out203-205-221-202.mail.qq.com [203.205.221.202]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 052C36884D for ; Wed, 11 Aug 2021 08:13:30 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1628662404; bh=+X20fJuiUYvAysiSJ7/6wMb9m82hyoes3vKavjDI0o0=; h=From:To:Cc:Subject:Date; b=gXIq/fmpxZtG06d1QeK+0/6s5mL32GQn7JCmEl9aJxfVXCpND6g7yBz3Av4LCIuJe enPRWjC0x7/5l4fcy54Z/fwvuWgI6lufKpgRZxIPv3hWh9Be1QgNGlj4behf4Q3zzH V8hdLW+dpXvH7CoxcWeybEyKytmwAvUdz0vT2Vnc= Received: from localhost.localdomain ([123.126.82.8]) by newxmesmtplogicsvrszc9.qq.com (NewEsmtp) with SMTP id 3569928F; Wed, 11 Aug 2021 14:13:22 +0800 X-QQ-mid: xmsmtpt1628662402tk4zg0feg Message-ID: X-QQ-XMAILINFO: NImvdRhE6fHp2cEhkM66Z52djvD9XZ1Zo6kkfspLotff4GtmZnlFjotcW0fMsd 4Mb3D+6g0xd/Py+R7sUFLb8VC5sk1s1q5/Ugv3OzZj8AqQhyQVjaa/xnyoefKPUAE9cDFK5efB3E 2G7xqWrZg9jVaDAPrlNSsWd0DtDn0YC5z5GTp3ymB9v+zhPQY/cdfhMgBo7VbJITILQMUFisSe4Q QgzBTcb2CwqN7v/h6t+0zKOYZMIyyvLYGa49rwKaJNN2tbfXiG4DfZAEfy3Yvea+mtpGGvgzN7dy mNMR/J/G4J2cOeMihhvkR+Ae5ebWlTw2/OQ4v/7x1PWtG2Eki4aok/SlIEPPYd1I/H2dICuqiGio epxVlFhyXjwqoVjf4QR2jp3OyfaXuazc3gHKrdPuQvFg0/IPB8VXgkAXakZ+hvXBn6wyHJ9xR0hj Xkq0+Hpi1YP5fTK743VzsrKeKCESKTEH2HcIzElZlsOtTYPRG6V7TP7kjYAAN5MvldZ0Jm/380PA EROnffklNSj5NRb1YIMiNO14S1ARWLacrskkGHeDFEJzD5On/Uzbu65yM7djmHXnmDyP5ir898Is HWUfkK1xCxJajPAZkVTQno/ACKxc3tazNui0FinHid6nIjzLY2ems2O1cwjNsvwrK5Ipj4qS5j6g jjHjUkxr2K+38WrnINus11qWF+xkeit6GkbgE+iMTYtR8hEQGqRR1292QABEPgBeOOoYbM3Emr3F yNAexBjRPNkKMaBEkQEE2BSk5ZvWYeLZPaOBUjCXfmyV9vQ1cgfOJGRsCHRailw7zk+49xkVE2Io OGbU9sX2cdWUssqFeg850R5tmsFaTmxKk2/B1+qf/blWyzCtHs+AvP4v7nuwu/cfioE2APC36zOH bGeaNikeVHhAkRuIrQhk1JxoTsNmB5vpvJ3mK+KQAlGs1UOyoCqGQjvSTg2LFAyg== From: Siyuan Fan To: libcamera-devel@lists.libcamera.org Date: Wed, 11 Aug 2021 07:12:54 +0100 X-OQ-MSGID: <20210811061258.7421-1-siyuan.fan@foxmail.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Subject: [libcamera-devel] [RFC PATCH v2 0/4] pipeline: isp: The software ISP module X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" From: Fan Siyuan This patch series fix some of issues raised last commits. Now the test module of software isp can output the RGB888 format image. Patch 1/4 fixs the pipeline handler and make it more concise. Patch 2/4 moves the previous ISP process to libcamera/swisp for general API interface. Patch 3/4 adds the friend class CPU_ISP in class FrameBuffer to access the private member metadata_. Patch 4/4 modifies the dependent file path. Fan Siyuan (4): pipeline: isp: The software ISP-based pipeline handler libcamera: swisp: The software ISP class libcamera: framebuffer: Add the friend class CPU_ISP pipeline: isp: All meson configure files include/libcamera/framebuffer.h | 1 + meson_options.txt | 2 +- src/libcamera/pipeline/isp/isp.cpp | 306 ++++++++++++ src/libcamera/pipeline/isp/meson.build | 6 + src/libcamera/swisp/isp.cpp | 643 +++++++++++++++++++++++++ src/libcamera/swisp/isp.h | 92 ++++ 6 files changed, 1049 insertions(+), 1 deletion(-) create mode 100644 src/libcamera/pipeline/isp/isp.cpp create mode 100644 src/libcamera/pipeline/isp/meson.build create mode 100644 src/libcamera/swisp/isp.cpp create mode 100644 src/libcamera/swisp/isp.h