From patchwork Sun Oct 12 14:20:51 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Robert Mader X-Patchwork-Id: 24598 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 EBDB5BE080 for ; Sun, 12 Oct 2025 14:21:33 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 946336044D; Sun, 12 Oct 2025 16:21:33 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=collabora.com header.i=robert.mader@collabora.com header.b="LcWfVXQX"; dkim-atps=neutral Received: from sender4-pp-f112.zoho.com (sender4-pp-f112.zoho.com [136.143.188.112]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id CE0906043B for ; Sun, 12 Oct 2025 16:21:31 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; t=1760278888; cv=none; d=zohomail.com; s=zohoarc; b=m5orL+soW89HZF2436xtcZfe1UIS1GuLGI8VIkC/uzqnq1vNxEKOjcRtiL05ty0jgBeZSDZntM+E/pbcLQrXvbL2N/2PCdO///ftWWppkPcFPklIJYJA6Dx4zQwxQ2A7oejJ/SQ/3OZSS+KwYO3CUN9042ycf7M2rGtPU8NzKRM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760278888; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=GkEByCVGx7IzlUYp8SwPyh4VMxUfk3wni3VtX4Iv8Rc=; b=IQBytGo5vJq9q8AHu780K3ERqAqpKGLCkKYy6G1QOH/R1W+XgQBo26MJ3PKN+x+PK6/zHCm54Br8hhXnWXDD+OA5aEE8pxggNfQKhdJndNqJPdL3F+VaXYihAdACimzGIL3nS99KXtYsz3HKysXzokYJBVLI7WiX17Q4ooh0KH0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=collabora.com; spf=pass smtp.mailfrom=robert.mader@collabora.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1760278888; s=zohomail; d=collabora.com; i=robert.mader@collabora.com; h=From:From:To:To:Cc:Cc:Subject:Subject:Date:Date:Message-ID:In-Reply-To:References:MIME-Version:Content-Transfer-Encoding:Message-Id:Reply-To; bh=GkEByCVGx7IzlUYp8SwPyh4VMxUfk3wni3VtX4Iv8Rc=; b=LcWfVXQXm8fs6rzJIagydJFZTsj73nn3gK08UjbIgHiVcyeaO7CiQy6M8DPBC4r6 V7tDG4AxTFoO9b3+wK6Dm7iTmOk7C1KQBlJ6AXVz1cWqUU7VPG7yUixI7O61aARaIX4 zeC/MGF0nZsEsB7RAKOvq/+u+XH67sXJNiz4cCa8= Received: by mx.zohomail.com with SMTPS id 1760278886446138.07378562727797; Sun, 12 Oct 2025 07:21:26 -0700 (PDT) From: Robert Mader To: libcamera-devel@lists.libcamera.org Cc: Robert Mader , Milan Zamazal Subject: [PATCH v5 2/3] pipeline: simple: Increase internal buffers for software ISP to 4 Date: Sun, 12 Oct 2025 16:20:51 +0200 Message-ID: <20251012142052.90611-3-robert.mader@collabora.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251012142052.90611-1-robert.mader@collabora.com> References: <20251012142052.90611-1-robert.mader@collabora.com> MIME-Version: 1.0 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" The Simple Pipeline handler supports a variety of hardware with different capabilities and performances. To improve performance and reliability of the cameras across the supported range, increase the number of internal buffers to 4. This allows lower performance devices more opportunity to process the frames and increases stability. Align the Simple Pipeline handler and Soft ISP buffering with the other hardware based platforms and use 4 internal buffers. Signed-off-by: Robert Mader Reviewed-by: Milan Zamazal Reviewed-by: Kieran Bingham --- This has been applied in postmarketOS since Oct 2024 and has fixed issues reported by users. --- src/libcamera/pipeline/simple/simple.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libcamera/pipeline/simple/simple.cpp b/src/libcamera/pipeline/simple/simple.cpp index 6e8271346..6a2ffe624 100644 --- a/src/libcamera/pipeline/simple/simple.cpp +++ b/src/libcamera/pipeline/simple/simple.cpp @@ -418,7 +418,7 @@ protected: private: static constexpr unsigned int kMaxQueuedRequestsDevice = 4; - static constexpr unsigned int kNumInternalBuffers = 3; + static constexpr unsigned int kNumInternalBuffers = 4; struct EntityData { std::unique_ptr video;