[{"id":18187,"web_url":"https://patchwork.libcamera.org/comment/18187/","msgid":"<YPBA0dE4XboMQXjI@pendragon.ideasonboard.com>","date":"2021-07-15T14:06:09","subject":"Re: [libcamera-devel] [PATCH] android: camera_capabilities: Ensure\n\tPixelArrayActiveAreas exists before accessing","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Kieran,\n\nThank you for the patch.\n\nOn Thu, Jul 15, 2021 at 03:00:11PM +0100, Kieran Bingham wrote:\n> The VIVID pipline handler does not set this. It's likely that the\n> UVC pipeline will not either.\n> \n> If not present, we must not access it.\n\nWasn't this considered as a mandatory property ?\n\n> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n> ---\n>  src/android/camera_capabilities.cpp | 2 +-\n>  1 file changed, 1 insertion(+), 1 deletion(-)\n> \n> diff --git a/src/android/camera_capabilities.cpp b/src/android/camera_capabilities.cpp\n> index 6b5edb66fad2..dfc961affe46 100644\n> --- a/src/android/camera_capabilities.cpp\n> +++ b/src/android/camera_capabilities.cpp\n> @@ -589,7 +589,7 @@ int CameraCapabilities::initializeStaticMetadata()\n>  \t\t\t\t\t  physicalSize);\n>  \t}\n>  \n> -\t{\n> +\tif (properties.contains(properties::PixelArrayActiveAreas)) {\n>  \t\tconst Span<const Rectangle> &rects =\n>  \t\t\tproperties.get(properties::PixelArrayActiveAreas);\n>  \t\tstd::vector<int32_t> data{","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 DB7CBC3225\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 15 Jul 2021 14:06:12 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 558D76852A;\n\tThu, 15 Jul 2021 16:06:12 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 6921060282\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 15 Jul 2021 16:06:11 +0200 (CEST)","from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi\n\t[62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id C2915340;\n\tThu, 15 Jul 2021 16:06:10 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"rykLyqwW\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1626357971;\n\tbh=n1C3gXZegRIGLTnC75rvZfvKMAEjx63+TUAiltmTWmY=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=rykLyqwWCX1GVl+bLqDBdYGHS0lcZMC9JhtE05jVcSUkHUeIs0LrQIzCky9NkjFlT\n\tfbnLZVXWtds/PyJXC3dAZ7qroHItSmtOKHKCL3qf1Zmf79AllFvqaoHm+esXLqGfWf\n\tmkYenHCvEDeZjmXLbq573HjrMOWWed6QMW5AIYMc=","Date":"Thu, 15 Jul 2021 17:06:09 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Message-ID":"<YPBA0dE4XboMQXjI@pendragon.ideasonboard.com>","References":"<20210715140011.122598-1-kieran.bingham@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20210715140011.122598-1-kieran.bingham@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH] android: camera_capabilities: Ensure\n\tPixelArrayActiveAreas exists before accessing","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>","Cc":"libcamera devel <libcamera-devel@lists.libcamera.org>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":18190,"web_url":"https://patchwork.libcamera.org/comment/18190/","msgid":"<38e306f8-1423-cb51-a072-e811680775eb@ideasonboard.com>","date":"2021-07-15T14:29:37","subject":"Re: [libcamera-devel] [PATCH] android: camera_capabilities: Ensure\n\tPixelArrayActiveAreas exists before accessing","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Hi Laurent,\n\nOn 15/07/2021 15:06, Laurent Pinchart wrote:\n> Hi Kieran,\n> \n> Thank you for the patch.\n> \n> On Thu, Jul 15, 2021 at 03:00:11PM +0100, Kieran Bingham wrote:\n>> The VIVID pipline handler does not set this. It's likely that the\n>> UVC pipeline will not either.\n>>\n>> If not present, we must not access it.\n> \n> Wasn't this considered as a mandatory property ?\n\nBy android - or by us?\n\nCan this property be identified on a UVC camera?\n\nOr should we just report the biggest frame size in the pipeline handler\nif it's not something we can otherwise determine?\n\nI had thought mandatory properties were going to have a flag in the yaml\n- but I don't see it here (or anywhere though).\n\nDo we already define mandatory properties in another location?\n--\nKieran\n\n\n> \n>> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n>> ---\n>>  src/android/camera_capabilities.cpp | 2 +-\n>>  1 file changed, 1 insertion(+), 1 deletion(-)\n>>\n>> diff --git a/src/android/camera_capabilities.cpp b/src/android/camera_capabilities.cpp\n>> index 6b5edb66fad2..dfc961affe46 100644\n>> --- a/src/android/camera_capabilities.cpp\n>> +++ b/src/android/camera_capabilities.cpp\n>> @@ -589,7 +589,7 @@ int CameraCapabilities::initializeStaticMetadata()\n>>  \t\t\t\t\t  physicalSize);\n>>  \t}\n>>  \n>> -\t{\n>> +\tif (properties.contains(properties::PixelArrayActiveAreas)) {\n>>  \t\tconst Span<const Rectangle> &rects =\n>>  \t\t\tproperties.get(properties::PixelArrayActiveAreas);\n>>  \t\tstd::vector<int32_t> data{\n>","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 6A220C3226\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 15 Jul 2021 14:29:45 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 4187D68525;\n\tThu, 15 Jul 2021 16:29:42 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 6F28C60282\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 15 Jul 2021 16:29:40 +0200 (CEST)","from [192.168.0.20]\n\t(cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 085C4340;\n\tThu, 15 Jul 2021 16:29:39 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"FcxlVMzP\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1626359380;\n\tbh=CSGOk27uAjy8CpaqRu6XOz87YEJevSYFhEe0sIbOtEI=;\n\th=From:Subject:To:Cc:References:Date:In-Reply-To:From;\n\tb=FcxlVMzPCZg1M5X9s+P338jHAdgOZtgFNGWsKWlWZLZXEU5OullE2NvngS6tVwbn2\n\tvQlCyjFPP2qWMZhK1t///UVtb+H1FNzB+rPGkCsnQPsXujaKuzhqm3uviqBrS7Gv0d\n\tqbUVDSX/3X5MGIHHwFVWhMubXszXlO7tafEZpykQ=","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","References":"<20210715140011.122598-1-kieran.bingham@ideasonboard.com>\n\t<YPBA0dE4XboMQXjI@pendragon.ideasonboard.com>","Message-ID":"<38e306f8-1423-cb51-a072-e811680775eb@ideasonboard.com>","Date":"Thu, 15 Jul 2021 15:29:37 +0100","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101\n\tThunderbird/78.11.0","MIME-Version":"1.0","In-Reply-To":"<YPBA0dE4XboMQXjI@pendragon.ideasonboard.com>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-GB","Content-Transfer-Encoding":"7bit","Subject":"Re: [libcamera-devel] [PATCH] android: camera_capabilities: Ensure\n\tPixelArrayActiveAreas exists before accessing","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>","Cc":"libcamera devel <libcamera-devel@lists.libcamera.org>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":18192,"web_url":"https://patchwork.libcamera.org/comment/18192/","msgid":"<YPBHpUGtlEgnK2KB@pendragon.ideasonboard.com>","date":"2021-07-15T14:35:17","subject":"Re: [libcamera-devel] [PATCH] android: camera_capabilities: Ensure\n\tPixelArrayActiveAreas exists before accessing","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Kieran,\n\nOn Thu, Jul 15, 2021 at 03:29:37PM +0100, Kieran Bingham wrote:\n> On 15/07/2021 15:06, Laurent Pinchart wrote:\n> > On Thu, Jul 15, 2021 at 03:00:11PM +0100, Kieran Bingham wrote:\n> >> The VIVID pipline handler does not set this. It's likely that the\n> >> UVC pipeline will not either.\n> >>\n> >> If not present, we must not access it.\n> > \n> > Wasn't this considered as a mandatory property ?\n> \n> By android - or by us?\n\nBy us.\n\n> Can this property be identified on a UVC camera?\n\nWe can set it to the maximum resolution.\n\n> Or should we just report the biggest frame size in the pipeline handler\n> if it's not something we can otherwise determine?\n\nThere we go :-)\n\n> I had thought mandatory properties were going to have a flag in the yaml\n> - but I don't see it here (or anywhere though).\n\nCorrect, there should be a flag, but we don't have that yet.\n\n> Do we already define mandatory properties in another location?\n\nNo. Should we start adding the flag, even if we don't do anything with\nit ?\n\n> >> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n> >> ---\n> >>  src/android/camera_capabilities.cpp | 2 +-\n> >>  1 file changed, 1 insertion(+), 1 deletion(-)\n> >>\n> >> diff --git a/src/android/camera_capabilities.cpp b/src/android/camera_capabilities.cpp\n> >> index 6b5edb66fad2..dfc961affe46 100644\n> >> --- a/src/android/camera_capabilities.cpp\n> >> +++ b/src/android/camera_capabilities.cpp\n> >> @@ -589,7 +589,7 @@ int CameraCapabilities::initializeStaticMetadata()\n> >>  \t\t\t\t\t  physicalSize);\n> >>  \t}\n> >>  \n> >> -\t{\n> >> +\tif (properties.contains(properties::PixelArrayActiveAreas)) {\n> >>  \t\tconst Span<const Rectangle> &rects =\n> >>  \t\t\tproperties.get(properties::PixelArrayActiveAreas);\n> >>  \t\tstd::vector<int32_t> data{","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 ADB2BC3225\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 15 Jul 2021 14:35:21 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 9172968533;\n\tThu, 15 Jul 2021 16:35:20 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id E0F5160282\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 15 Jul 2021 16:35:18 +0200 (CEST)","from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi\n\t[62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 51CBA340;\n\tThu, 15 Jul 2021 16:35:18 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"u1hNXS9I\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1626359718;\n\tbh=Lm20PX4lGV1MN5g7p4RemqyuGtTbyLDwYAQ51atx3u8=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=u1hNXS9IWFO3Le/liU8mmSx1MS5kPwdxjqkhVJVg2Wo87BqT3ZmheK0fKaoTN591R\n\tTDhnjRDnH7+dlORtV48fSc7ok6NhAXOWNrjJKgqClyykWrumOq2SpBVZlz1hT6gGsl\n\tQ+Gl+H3gsHw6hmDgT49Ce0G6X6jc6ZUf8exhSvs0=","Date":"Thu, 15 Jul 2021 17:35:17 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Message-ID":"<YPBHpUGtlEgnK2KB@pendragon.ideasonboard.com>","References":"<20210715140011.122598-1-kieran.bingham@ideasonboard.com>\n\t<YPBA0dE4XboMQXjI@pendragon.ideasonboard.com>\n\t<38e306f8-1423-cb51-a072-e811680775eb@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<38e306f8-1423-cb51-a072-e811680775eb@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH] android: camera_capabilities: Ensure\n\tPixelArrayActiveAreas exists before accessing","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>","Cc":"libcamera devel <libcamera-devel@lists.libcamera.org>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":18193,"web_url":"https://patchwork.libcamera.org/comment/18193/","msgid":"<6a2c4be9-5e50-783a-628d-439975d15306@ideasonboard.com>","date":"2021-07-15T14:37:21","subject":"Re: [libcamera-devel] [PATCH] android: camera_capabilities: Ensure\n\tPixelArrayActiveAreas exists before accessing","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"On 15/07/2021 15:35, Laurent Pinchart wrote:\n> Hi Kieran,\n> \n> On Thu, Jul 15, 2021 at 03:29:37PM +0100, Kieran Bingham wrote:\n>> On 15/07/2021 15:06, Laurent Pinchart wrote:\n>>> On Thu, Jul 15, 2021 at 03:00:11PM +0100, Kieran Bingham wrote:\n>>>> The VIVID pipline handler does not set this. It's likely that the\n>>>> UVC pipeline will not either.\n>>>>\n>>>> If not present, we must not access it.\n>>>\n>>> Wasn't this considered as a mandatory property ?\n>>\n>> By android - or by us?\n> \n> By us.\n> \n>> Can this property be identified on a UVC camera?\n> \n> We can set it to the maximum resolution.\n> \n>> Or should we just report the biggest frame size in the pipeline handler\n>> if it's not something we can otherwise determine?\n> \n> There we go :-)\n\nOk - so we can do that then. If it's mandatory - then the Vivid pipeline\nshould be updated and document what a reader should implement (while the\nVivid simply sets the biggest supported size)\n\n\n>> I had thought mandatory properties were going to have a flag in the yaml\n>> - but I don't see it here (or anywhere though).\n> \n> Correct, there should be a flag, but we don't have that yet.\n> \n>> Do we already define mandatory properties in another location?\n> \n> No. Should we start adding the flag, even if we don't do anything with\n> it ?\n\nI would have thought that's at least better to act as documentation of\nthe intentions?\n\n\n\n>>>> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n>>>> ---\n>>>>  src/android/camera_capabilities.cpp | 2 +-\n>>>>  1 file changed, 1 insertion(+), 1 deletion(-)\n>>>>\n>>>> diff --git a/src/android/camera_capabilities.cpp b/src/android/camera_capabilities.cpp\n>>>> index 6b5edb66fad2..dfc961affe46 100644\n>>>> --- a/src/android/camera_capabilities.cpp\n>>>> +++ b/src/android/camera_capabilities.cpp\n>>>> @@ -589,7 +589,7 @@ int CameraCapabilities::initializeStaticMetadata()\n>>>>  \t\t\t\t\t  physicalSize);\n>>>>  \t}\n>>>>  \n>>>> -\t{\n>>>> +\tif (properties.contains(properties::PixelArrayActiveAreas)) {\n>>>>  \t\tconst Span<const Rectangle> &rects =\n>>>>  \t\t\tproperties.get(properties::PixelArrayActiveAreas);\n>>>>  \t\tstd::vector<int32_t> data{\n>","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 33A48C3226\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 15 Jul 2021 14:37:27 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 8F26568533;\n\tThu, 15 Jul 2021 16:37:26 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id B43C560282\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 15 Jul 2021 16:37:24 +0200 (CEST)","from [192.168.0.20]\n\t(cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 46CF9340;\n\tThu, 15 Jul 2021 16:37:24 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"j9bjm5+W\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1626359844;\n\tbh=nyuVtJVm921NV2BtArIUiORXEfEk/MS9ZTdSOgiHWwk=;\n\th=From:Subject:To:Cc:References:Date:In-Reply-To:From;\n\tb=j9bjm5+WPOACsGMQHRXV4bj41Kz3tUK+jYvG2oWSYSFfOjZv7WXei7IGe+l0VNWph\n\tj+AOWAyZlNrwm4CqyGyH9lOlLVRGHCrLuJ6HhB1YVpSVVqtIgMm7pqU1PhWV4zL0Or\n\tZnGRAfk+YlZyDpHA16Qalht6u2dLLnLtFfLNT7jA=","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","References":"<20210715140011.122598-1-kieran.bingham@ideasonboard.com>\n\t<YPBA0dE4XboMQXjI@pendragon.ideasonboard.com>\n\t<38e306f8-1423-cb51-a072-e811680775eb@ideasonboard.com>\n\t<YPBHpUGtlEgnK2KB@pendragon.ideasonboard.com>","Message-ID":"<6a2c4be9-5e50-783a-628d-439975d15306@ideasonboard.com>","Date":"Thu, 15 Jul 2021 15:37:21 +0100","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101\n\tThunderbird/78.11.0","MIME-Version":"1.0","In-Reply-To":"<YPBHpUGtlEgnK2KB@pendragon.ideasonboard.com>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-GB","Content-Transfer-Encoding":"7bit","Subject":"Re: [libcamera-devel] [PATCH] android: camera_capabilities: Ensure\n\tPixelArrayActiveAreas exists before accessing","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>","Cc":"libcamera devel <libcamera-devel@lists.libcamera.org>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":18195,"web_url":"https://patchwork.libcamera.org/comment/18195/","msgid":"<YPBKPEMxFquw25xg@pendragon.ideasonboard.com>","date":"2021-07-15T14:46:20","subject":"Re: [libcamera-devel] [PATCH] android: camera_capabilities: Ensure\n\tPixelArrayActiveAreas exists before accessing","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"On Thu, Jul 15, 2021 at 03:37:21PM +0100, Kieran Bingham wrote:\n> On 15/07/2021 15:35, Laurent Pinchart wrote:\n> > Hi Kieran,\n> > \n> > On Thu, Jul 15, 2021 at 03:29:37PM +0100, Kieran Bingham wrote:\n> >> On 15/07/2021 15:06, Laurent Pinchart wrote:\n> >>> On Thu, Jul 15, 2021 at 03:00:11PM +0100, Kieran Bingham wrote:\n> >>>> The VIVID pipline handler does not set this. It's likely that the\n> >>>> UVC pipeline will not either.\n> >>>>\n> >>>> If not present, we must not access it.\n> >>>\n> >>> Wasn't this considered as a mandatory property ?\n> >>\n> >> By android - or by us?\n> > \n> > By us.\n> > \n> >> Can this property be identified on a UVC camera?\n> > \n> > We can set it to the maximum resolution.\n> > \n> >> Or should we just report the biggest frame size in the pipeline handler\n> >> if it's not something we can otherwise determine?\n> > \n> > There we go :-)\n> \n> Ok - so we can do that then. If it's mandatory - then the Vivid pipeline\n> should be updated and document what a reader should implement (while the\n> Vivid simply sets the biggest supported size)\n> \n> >> I had thought mandatory properties were going to have a flag in the yaml\n> >> - but I don't see it here (or anywhere though).\n> > \n> > Correct, there should be a flag, but we don't have that yet.\n> > \n> >> Do we already define mandatory properties in another location?\n> > \n> > No. Should we start adding the flag, even if we don't do anything with\n> > it ?\n> \n> I would have thought that's at least better to act as documentation of\n> the intentions?\n\nAgreed.\n\n> >>>> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n> >>>> ---\n> >>>>  src/android/camera_capabilities.cpp | 2 +-\n> >>>>  1 file changed, 1 insertion(+), 1 deletion(-)\n> >>>>\n> >>>> diff --git a/src/android/camera_capabilities.cpp b/src/android/camera_capabilities.cpp\n> >>>> index 6b5edb66fad2..dfc961affe46 100644\n> >>>> --- a/src/android/camera_capabilities.cpp\n> >>>> +++ b/src/android/camera_capabilities.cpp\n> >>>> @@ -589,7 +589,7 @@ int CameraCapabilities::initializeStaticMetadata()\n> >>>>  \t\t\t\t\t  physicalSize);\n> >>>>  \t}\n> >>>>  \n> >>>> -\t{\n> >>>> +\tif (properties.contains(properties::PixelArrayActiveAreas)) {\n> >>>>  \t\tconst Span<const Rectangle> &rects =\n> >>>>  \t\t\tproperties.get(properties::PixelArrayActiveAreas);\n> >>>>  \t\tstd::vector<int32_t> data{","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 C578EC3225\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 15 Jul 2021 14:46:24 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 2D87A68539;\n\tThu, 15 Jul 2021 16:46:24 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id D66396059F\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 15 Jul 2021 16:46:22 +0200 (CEST)","from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi\n\t[62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 4A114340;\n\tThu, 15 Jul 2021 16:46:22 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"PrGfNdyT\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1626360382;\n\tbh=iN79q4ti1kD/8/Xs0O2/AIJiIL+x4V2BapWWhBV8IHc=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=PrGfNdyT2d2z6Cuh5EzEeIRJbAOp/62uOF8l1wbmGs6cphpItSLe4XpU8r4l7sG5T\n\tIWz4SUDThKf0yGP2yr8dKW+BDERZdQucUs2BnTipYLMmjbgj2ILrsVt3mfQy/1AJZe\n\t+Z71ZrLwzV/QsJOKPElnh44XEWqzo8rD58gdhP1M=","Date":"Thu, 15 Jul 2021 17:46:20 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Message-ID":"<YPBKPEMxFquw25xg@pendragon.ideasonboard.com>","References":"<20210715140011.122598-1-kieran.bingham@ideasonboard.com>\n\t<YPBA0dE4XboMQXjI@pendragon.ideasonboard.com>\n\t<38e306f8-1423-cb51-a072-e811680775eb@ideasonboard.com>\n\t<YPBHpUGtlEgnK2KB@pendragon.ideasonboard.com>\n\t<6a2c4be9-5e50-783a-628d-439975d15306@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<6a2c4be9-5e50-783a-628d-439975d15306@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH] android: camera_capabilities: Ensure\n\tPixelArrayActiveAreas exists before accessing","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>","Cc":"libcamera devel <libcamera-devel@lists.libcamera.org>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]