From patchwork Sun Aug 16 20:42:56 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Alexander X-Patchwork-Id: 27774 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 2897AC3303 for ; Mon, 17 Aug 2026 07:30:13 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id ECA306823D; Mon, 17 Aug 2026 09:30:08 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=inspiredexperts.com header.i=@inspiredexperts.com header.b="h4pN8gL4"; dkim-atps=neutral Received: from s1.inspiredexperts.com (s1.inspiredexperts.com [162.243.156.162]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id AC4626819B for ; Sun, 16 Aug 2026 22:43:01 +0200 (CEST) Received: from localhost (s1.inspiredexperts.com [127.0.0.1]) by s1.inspiredexperts.com (Postfix) with ESMTP id D4728D2D68C for ; Sun, 16 Aug 2026 14:42:59 -0600 (MDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=inspiredexperts.com; s=default; t=1786912980; bh=MgCFZ4W69Izgt6SEo95sZeG7R1ios0m6piKbDsmnhaE=; h=From:To:Subject:Date:From; b=h4pN8gL4ujKNxlP8g7mzwVVnCIauhDHMbkNoc83oQs04Sgws46H3AXZb3rJcPSxaE s+6kugRnatA8bSknCbeVyp7ZavbM18oAQF8ObLrP2FMnIMPVCPZGhq1OLWvBB1ydzv RuiUcNnDUzkdS1c6zDb59kW1Kxk5F9o3gugbMj9Y= From: James Alexander To: libcamera-devel@lists.libcamera.org Subject: [PATCH 0/3] ipa: simple: Add sensor-specific image and exposure tuning Date: Sun, 16 Aug 2026 14:42:56 -0600 Message-ID: <20260816204259.2845517-1-opensource@inspiredexperts.com> X-Mailer: git-send-email 2.53.0 MIME-Version: 1.0 X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on s1.inspiredexperts.com X-Mailman-Approved-At: Mon, 17 Aug 2026 09:30:05 +0200 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" This series lets a simple IPA tuning file set its starting image controls and practical AGC limits, then uses those settings for the OV08X40. The new tuning keys are optional. Existing tuning files keep their current defaults, and configured values are clamped to the existing control ranges or the limits reported by the sensor. The series was built against libcamera b8910c9a4961 with the simple pipeline and simple IPA enabled. On an HP Spectre x360 14-eu0xxx, the full camera patch set captured 60 consecutive 3848x2416 frames at 30 fps and produced a stable preview through PipeWire and GNOME Snapshot. The OV08X40 matrix and defaults were adjusted under 2700 K LED lighting. They are a useful starting point for this camera, but they are not lab calibrated. James Alexander --- James Alexander (3): ipa: simple: adjust: Read defaults from tuning ipa: simple: agc: Read limits from tuning ipa: simple: Add OV08X40 tuning src/ipa/simple/algorithms/adjust.cpp | 26 ++++++++++++++++++++------ src/ipa/simple/algorithms/adjust.h | 6 ++++++ src/ipa/simple/algorithms/agc.cpp | 44 ++++++++++++++++++++++++++++++++++++- src/ipa/simple/algorithms/agc.h | 9 ++++++++ src/ipa/simple/data/meson.build | 1 + src/ipa/simple/data/ov08x40.yaml | 22 +++++++++++++++++++ 6 files changed, 101 insertions(+), 7 deletions(-)