{"id":21349,"url":"https://patchwork.libcamera.org/api/1.1/covers/21349/?format=json","web_url":"https://patchwork.libcamera.org/cover/21349/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20240925081551.3265942-1-chenghaoyang@google.com>","date":"2024-09-25T08:12:23","name":"[v8,0/3] Add Face Detection Controls","submitter":{"id":117,"url":"https://patchwork.libcamera.org/api/1.1/people/117/?format=json","name":"Cheng-Hao Yang","email":"chenghaoyang@chromium.org"},"mbox":"https://patchwork.libcamera.org/cover/21349/mbox/","series":[{"id":4622,"url":"https://patchwork.libcamera.org/api/1.1/series/4622/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4622","date":"2024-09-25T08:12:23","name":"Add Face Detection Controls","version":8,"mbox":"https://patchwork.libcamera.org/series/4622/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/21349/comments/","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 2C426C0F1B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 25 Sep 2024 08:16:03 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 3B1F76350F;\n\tWed, 25 Sep 2024 10:16:02 +0200 (CEST)","from mail-pl1-x636.google.com (mail-pl1-x636.google.com\n\t[IPv6:2607:f8b0:4864:20::636])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 12667634F4\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 25 Sep 2024 10:16:01 +0200 (CEST)","by mail-pl1-x636.google.com with SMTP id\n\td9443c01a7336-20792913262so76096015ad.3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 25 Sep 2024 01:16:00 -0700 (PDT)","from chenghaoyang-low.c.googlers.com.com\n\t(0.223.81.34.bc.googleusercontent.com. [34.81.223.0])\n\tby smtp.gmail.com with ESMTPSA id\n\td9443c01a7336-20b002aaa8fsm6336465ad.240.2024.09.25.01.15.57\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tWed, 25 Sep 2024 01:15:58 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=chromium.org header.i=@chromium.org\n\theader.b=\"BrgPPuZH\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=chromium.org; s=google; t=1727252159; x=1727856959;\n\tdarn=lists.libcamera.org; \n\th=content-transfer-encoding:mime-version:message-id:date:subject:cc\n\t:to:from:from:to:cc:subject:date:message-id:reply-to;\n\tbh=XPXWRnLkBCOGOqqbWaOgbmBFdvvaxd8o9a+SNF+IppU=;\n\tb=BrgPPuZHWF4181BwS0GbHR6oscQtMH+/egj65zgKOmDxBuSbEcmERLUPetCpxf396N\n\t0wrfzuxVGK4XG0R7Zqd29QXwS/oSQ8mC932jUSp7eWl4OxRzV/+FtO8BPDESS6oDtDRI\n\tAF8nNkYm45a8eOb/Rv5oChZRPPA2sjTac7kAc=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20230601; t=1727252159; x=1727856959;\n\th=content-transfer-encoding:mime-version:message-id:date:subject:cc\n\t:to:from:x-gm-message-state:from:to:cc:subject:date:message-id\n\t:reply-to;\n\tbh=XPXWRnLkBCOGOqqbWaOgbmBFdvvaxd8o9a+SNF+IppU=;\n\tb=iseBkG09ejudbE030URUREixRcbeFIbBJ7JxtsI+LmAY73cPc0/ifaqeKUqgvl6MWc\n\txSIeHGEJ3+g7+SZh/8AQmP/Ff/ez4iQ7x++zJPmRy85/YESq7k/PpcCjvvql5MLpFsY9\n\tu2GYF6vqvpZ5F3/0vgirKfrczU+TJSrYq2xAXdDD1bLMOMT5RQd1pqHCgLhhPR9VpZYl\n\tNxrnlE10eqaK6I0tRdnZxXq3WjPhjAKdekQRczj6p0qWCfWOyDaurdD8KF94qe8UcX9K\n\tF0FSD8o7Jn3CgI89va3Hs5a7KY+MqnX2KkD6xIox7rKJYYKcOXsN/2AWjmKPtGXUyyS4\n\t+4Sw==","X-Gm-Message-State":"AOJu0Yxd8RqVd13dESmOf0dl6KZi1DfeJFc97Djy99tR/TMFYR+tLFlK\n\tVy4GenWPYB8lGfhsYAAnqDOsmd/spHS5KQpKkIRcD+PjWfSwlJtYp2s6pWiwktmo25z9H7H5HQM\n\t=","X-Google-Smtp-Source":"AGHT+IEcOBu2ak6B0OQtkL2RUtK7KOJ/4ApV9Z1Wfi5ZP98HrSuuCDcwbWU9f2tFvf/IhOGIvMpHpQ==","X-Received":"by 2002:a17:903:41cd:b0:205:5582:d650 with SMTP id\n\td9443c01a7336-20afc5e3a39mr28438625ad.52.1727252158720; \n\tWed, 25 Sep 2024 01:15:58 -0700 (PDT)","From":"Harvey Yang <chenghaoyang@chromium.org>","X-Google-Original-From":"Harvey Yang <chenghaoyang@google.com>","To":"libcamera-devel@lists.libcamera.org","Cc":"Harvey Yang <chenghaoyang@google.com>","Subject":"[PATCH v8 0/3] Add Face Detection Controls","Date":"Wed, 25 Sep 2024 08:12:23 +0000","Message-ID":"<20240925081551.3265942-1-chenghaoyang@google.com>","X-Mailer":"git-send-email 2.46.0.792.g87dc391469-goog","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Hi folks,\n\nThis series of patches adds face detection controls in the control ids,\nthe corresponding usages, and a c'tor of libcamera::Rectangle to\nconstruct it easiler with face detection results.\n\nIt passed gitlab pipeline checks:\nhttps://gitlab.freedesktop.org/chenghaoyang/libcamera/-/pipelines/1276999\n\nThis is one of the series cherry-picked from cros mtkisp7 branch.\n\nThe corresponding CLs in cros are:\nhttps://chromium-review.googlesource.com/c/chromiumos/third_party/libcamera/+/4741266\nhttps://chromium-review.googlesource.com/c/chromiumos/third_party/libcamera/+/4741267\nhttps://chromium-review.googlesource.com/c/chromiumos/third_party/libcamera/+/5669229\nhttps://chromium-review.googlesource.com/c/chromiumos/third_party/libcamera/+/5669232\n\nThe usages in pipeline handler mtkisp7 will be added later.\n\nThe checkstyle's suggestion on the second patch is ignored, as it\nchanges the style of previous code.\n\nv8: Reverted back to v5 that new control ids in the draft.\n\nv7: Fixed comments.\n\nv6:\n- Added control_ids_android as the new control id list.\n  - Moved the new control ids there, instead of in draft.\n\nv5:\n- Rewrote Rectangle's c'tor that allows any two diagonal points.\n  - Added unit tests.\n\nv4:\n- Added support of FaceDetectModeFull and FaceDetectFaceIds.\n- Fixed descriptions of control sizes.\n\nv3: Applied fixes according to Jacopo's comments.\n- Moved the new face detection controls from core to draft.\n- Amended new controls' descriptions.\n\nv2:\n- Squashed the fourth CL into the last patch, as it's a fix.\n- Fixed CLs based on checkstyle's suggestions.\n\n\nHarvey Yang (1):\n  libcamera: android: Add face detection control support\n\nYudhistira Erlandinata (2):\n  libcamera: Add rectangle two-point constructor\n  libcamera: Add face detection controls\n\n include/libcamera/controls.h         |  6 ++\n include/libcamera/geometry.h         |  7 +++\n src/android/camera_capabilities.cpp  | 45 ++++++++++++--\n src/android/camera_device.cpp        | 70 +++++++++++++++++++++-\n src/libcamera/control_ids_draft.yaml | 88 ++++++++++++++++++++++++++++\n src/libcamera/controls.cpp           |  6 ++\n src/libcamera/geometry.cpp           |  7 +++\n test/geometry.cpp                    | 14 +++++\n 8 files changed, 237 insertions(+), 6 deletions(-)"}