From patchwork Thu Feb 4 10:05:35 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hirokazu Honda X-Patchwork-Id: 11138 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 33239BD162 for ; Thu, 4 Feb 2021 10:05:51 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 9617561419; Thu, 4 Feb 2021 11:05:50 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=chromium.org header.i=@chromium.org header.b="aqNjbpEs"; dkim-atps=neutral Received: from mail-pj1-x102d.google.com (mail-pj1-x102d.google.com [IPv6:2607:f8b0:4864:20::102d]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 81C0661402 for ; Thu, 4 Feb 2021 11:05:49 +0100 (CET) Received: by mail-pj1-x102d.google.com with SMTP id m12so1412949pjs.4 for ; Thu, 04 Feb 2021 02:05:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=8ik7TfzeSqLXcSERWkOclHuqYB4kleEKdm9sFFNFrjg=; b=aqNjbpEsfBYmKGM7KVWMXOiwf37jfG14AK5r1t7c6ZnjTBX/VUkgYpkioEnSOJGbmS 7tmlL0ui4JH8SDCTSRBOQST8VQB80+Hk4Bcj9ZO28o4whQUhgAFb+diAQTTTID/RvM5e mdas6Mph8/27mCxQ6Un1UAtfpa3FtyOXxy2gA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=8ik7TfzeSqLXcSERWkOclHuqYB4kleEKdm9sFFNFrjg=; b=QjTBsoCVLAeklLrYb/Wk/9BD5fAtHERAiRy4e1N18UjFLhyxZFSJY4GZa//nGSDpp8 ptKXtEQ2zmpbKIYz432f/qkkWkfRVP9aYa0Xo+onuT/1T2xkUPogZ3FubUl/JLj0I6hy gzdzA1p98TivU+MYE55coa3VNndnrcU6+lZ/M+WC8y1uLDYyMn4XWjgLfFfn9HfMMLBE VDr/srTf/S3aW/p7oBLOh+RarQh5WV22wsQfe7R6rECaJ5pJBLD+JuiuDD9/dqKHazgi KFLG0LS1RftIrX6Hq9xROyd2nnp83Lb71DfrzWX4eoxsKdR0+rwFwjaggVxQu175cGx0 Eq7g== X-Gm-Message-State: AOAM5337vV9OA1tfim7cnSOUpnxnGAKgZjuBX5j+nRrEM3uaAhgzw4Xq tvaUHbWakENn6HhKFH70xDrzLiCCe4WklUbG X-Google-Smtp-Source: ABdhPJyqNKT2I5NPSoFHozZ7FwpkMVDp8swzXkIO/5jDLKfvVD5gt9ymM35GsZMsYvcnZQZBEHCwHA== X-Received: by 2002:a17:90a:db8d:: with SMTP id h13mr7505819pjv.203.1612433147503; Thu, 04 Feb 2021 02:05:47 -0800 (PST) Received: from hiroh.c.googlers.com.com (128.141.236.35.bc.googleusercontent.com. [35.236.141.128]) by smtp.gmail.com with ESMTPSA id j9sm5808418pgb.47.2021.02.04.02.05.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 Feb 2021 02:05:46 -0800 (PST) From: Hirokazu Honda To: libcamera-devel@lists.libcamera.org Date: Thu, 4 Feb 2021 10:05:35 +0000 Message-Id: <20210204100541.657503-1-hiroh@chromium.org> X-Mailer: git-send-email 2.30.0.365.g02bc693789-goog MIME-Version: 1.0 Subject: [libcamera-devel] [RFC PATCH 0/6] Support stream mapping in Android HAL adaptation layer 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: , Cc: hanlinchen@chromium.org Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" This patch series implements a stream mapping in Android HAL adaptaion layer. The stream mapping here means to map camera streams that can be produced by a native camera to camera streams requested by Android HAL client w/o post processing. This is helpful for the libcamera Android HAL implementation to produce camera streams that a camera device doesn't support and output multiple streams. Hirokazu Honda (6): libcamera: camera: Add tryValidate() to CameraConfiguration libcamera: ipu3: Implement tryValidate() in IPU3CameraConfiguration android: camera_stream: Pass post processor in configure() android: camera_device: Implement toString() in Camera3StreamConfig android: camera_device: Introduce PostProcessorType android: camera_device: Support stream mapping include/libcamera/camera.h | 1 + src/android/camera_device.cpp | 266 ++++++++++++++++++++++++++- src/android/camera_stream.cpp | 31 +--- src/android/camera_stream.h | 2 +- src/libcamera/camera.cpp | 22 +++ src/libcamera/pipeline/ipu3/imgu.cpp | 2 +- src/libcamera/pipeline/ipu3/imgu.h | 2 +- src/libcamera/pipeline/ipu3/ipu3.cpp | 160 ++++++++++++++++ 8 files changed, 453 insertions(+), 33 deletions(-) --- 2.30.0.365.g02bc693789-goog