From patchwork Tue Dec 10 14:23:53 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Cheng-Hao Yang X-Patchwork-Id: 22268 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 C66F4C3257 for ; Tue, 10 Dec 2024 14:26:05 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 295B767E87; Tue, 10 Dec 2024 15:26:05 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=chromium.org header.i=@chromium.org header.b="oCJ48R/6"; dkim-atps=neutral Received: from mail-pj1-x102c.google.com (mail-pj1-x102c.google.com [IPv6:2607:f8b0:4864:20::102c]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 9573E618AF for ; Tue, 10 Dec 2024 15:26:03 +0100 (CET) Received: by mail-pj1-x102c.google.com with SMTP id 98e67ed59e1d1-2eeb4d643a5so4976498a91.3 for ; Tue, 10 Dec 2024 06:26:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1733840762; x=1734445562; darn=lists.libcamera.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=a9WrEdya0OJ4t6pdBvQQiDKpW8ngH5WGtChTrEvRr8M=; b=oCJ48R/67mTssBbheZ27Y0aTvwxluSoSBY6sjXu+WUDvY2RrYP0ZvWzjKNq2PbmcOu 0oF/4FSV8FR8O2muh0/LmuWPpKDBd82uxriqGojY4P1WxS3pAwNqH66Lft+yvD9m5lIZ gBeej52idqPZhuaq9SzYMpXebOLLNVcHZauzE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1733840762; x=1734445562; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=a9WrEdya0OJ4t6pdBvQQiDKpW8ngH5WGtChTrEvRr8M=; b=SOtIpyxub0/Fx1YgBgRXw5tA8gb7Dm3m27QE29lgUFgNw/lp4vo0lwRHy4cfquKnUK cmF1A3L87dLujUAS39no8VXc5y/FsBUsFxnWZC4Ltu3nBq6migZ6XVPB1iMw2/6IUGcJ BNnRYrFsxVJ6ULMnTg06KriScyAqXUVX/fQ8R017kAn+NqlIQtFr7Kmr6oyr8zfUhsmR 0kvddmrgVq/6Z7LKvOakUnlxj7Yqh64Smx4Q0uZcil78d7FghSzvzViUfbL+BLbLPfi/ ORiFlgDTDMksFCrSykHFkkw0vh223x6SkunfBL1ddbU/gkV5El5KXzomeGeR+33fSSSY cM5w== X-Gm-Message-State: AOJu0YzpW5eSPRYG8gbZYzwIeUn7HBHKmAsowiXgO2uJ08SGvXJSuxCo Z6Q1ZWU+IK0v6PoJwA9w+NxJ3v0yFuTpI1bgQAQSaIAl7ddcHNacJwhrtjRGwzbQorumdqcr4sg = X-Gm-Gg: ASbGncs67tV7r6saLne0AOnqDds2EscW54xH3xOJK0Uf3Ox5x3bx4t7jrRywRB3z6hI KGdWHaic7zgvjY84Ov0EijXpMI2Vizh+4HCnKRvf0NVIQQVlquagmP23woehEL+8qbn7DSpmxnI aU9dvPpGhZRmuX+Oh4BozckXOQDztet+Mbo558/4TpQ8sApgNNBr52QKxQiYONjmPhAwfmxULhQ fhwjAzpOrWcRhsBwuXwSuY2u/mgk7YnPGz3ks42lukDlaPkoOGl5ZgeaiEB2pT7IZEOzFsdYins HejE0YKX5vQzeJbUYYHRBJRgZjAXUFeb1ARdRt4EFsxRCB3a4tpAaNAcGrhd X-Google-Smtp-Source: AGHT+IE66ZtPf5XTjOXlqQGtRteL1dzQPvYyMGGkasowl6nalbj1JTn1wMoShHkXWuapuAwgDEfA8w== X-Received: by 2002:a17:90b:28c5:b0:2ea:b564:4b31 with SMTP id 98e67ed59e1d1-2efcf1cdb77mr7129710a91.19.1733840761853; Tue, 10 Dec 2024 06:26:01 -0800 (PST) Received: from chenghaoyang-low.c.googlers.com.com (112.212.229.35.bc.googleusercontent.com. [35.229.212.112]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ef26ff97f2sm11812053a91.11.2024.12.10.06.26.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Dec 2024 06:26:01 -0800 (PST) From: Harvey Yang To: libcamera-devel@lists.libcamera.org Cc: Harvey Yang Subject: [PATCH v4 0/7] Refactor Android HAL before supporting partial result Date: Tue, 10 Dec 2024 14:23:53 +0000 Message-ID: <20241210142557.2886315-1-chenghaoyang@chromium.org> X-Mailer: git-send-email 2.47.0.338.g60cca15819-goog 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" Hi folks, This series of patches is a subset of the previous "Signal metadataAvailable and Android partial result". It consists of clean ups, bug fixes, and supporting multiple Mapped streams on the same source stream. This passes gitlab pipeline: https://gitlab.freedesktop.org/chenghaoyang/libcamera/-/pipelines/1327061 The series that adds the support of partial result will follow this series. v4: - Fixed error buffer notification and avoided post-processing on cancelled buffers. BR, Harvey Harvey Yang (7): android: Move StreamBuffer out of Camera3RequestDescriptor android: Set StreamBuffer::srcBuffer in CameraDevice::processCaptureRequest android: Correctly support multiple Mapped streams android: Add CameraDevice::sendCaptureResult() android: Drop notify CAMERA3_MSG_ERROR_REQUEST when a request fails android: notify CAMERA3_MSG_ERROR_REQUEST out of order android: Remove Camera3RequestDescriptor::streamsProcessMutex_ src/android/camera_device.cpp | 238 +++++++++++++---------- src/android/camera_device.h | 11 +- src/android/camera_request.cpp | 38 ++-- src/android/camera_request.h | 58 +++--- src/android/camera_stream.cpp | 20 +- src/android/camera_stream.h | 6 +- src/android/jpeg/encoder.h | 2 +- src/android/jpeg/encoder_jea.cpp | 2 +- src/android/jpeg/encoder_jea.h | 2 +- src/android/jpeg/encoder_libjpeg.cpp | 2 +- src/android/jpeg/encoder_libjpeg.h | 2 +- src/android/jpeg/post_processor_jpeg.cpp | 2 +- src/android/jpeg/post_processor_jpeg.h | 2 +- src/android/post_processor.h | 4 +- src/android/yuv/post_processor_yuv.cpp | 2 +- src/android/yuv/post_processor_yuv.h | 2 +- 16 files changed, 224 insertions(+), 169 deletions(-)