[{"id":16937,"web_url":"https://patchwork.libcamera.org/comment/16937/","msgid":"<20210514064635.GX195599@pyrite.rasen.tech>","date":"2021-05-14T06:46:35","subject":"Re: [libcamera-devel] [PATCH v5 3/3] android: jpeg: post_processor:\n\tUse the new metadata functions","submitter":{"id":17,"url":"https://patchwork.libcamera.org/api/people/17/","name":"Paul Elder","email":"paul.elder@ideasonboard.com"},"content":"Hi me,\n\nOn Fri, May 14, 2021 at 03:43:03PM +0900, Paul Elder wrote:\n> Now that CameraMetadata supports more convenient functions, use those\n> instead.\n> \n> Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>\n> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n> \n> ---\n> No change in v5\n> \n> No change in v4\n> \n> New in v3\n> ---\n>  src/android/jpeg/post_processor_jpeg.cpp | 11 ++++++-----\n>  1 file changed, 6 insertions(+), 5 deletions(-)\n> \n> diff --git a/src/android/jpeg/post_processor_jpeg.cpp b/src/android/jpeg/post_processor_jpeg.cpp\n> index 3bf16996..2ecf5578 100644\n> --- a/src/android/jpeg/post_processor_jpeg.cpp\n> +++ b/src/android/jpeg/post_processor_jpeg.cpp\n> @@ -15,6 +15,7 @@\n>  #include \"exif.h\"\n>  \n>  #include <libcamera/formats.h>\n> +#include <libcamera/span.h>\n\nWe don't need this anymore, so this should be removed.\n\n\nPaul\n\n>  \n>  #include \"libcamera/internal/log.h\"\n>  \n> @@ -103,7 +104,7 @@ int PostProcessorJpeg::process(const FrameBuffer &source,\n>  \tret = requestMetadata.getEntry(ANDROID_JPEG_ORIENTATION, &entry);\n>  \n>  \tconst uint32_t jpegOrientation = ret ? *entry.data.i32 : 0;\n> -\tresultMetadata->addEntry(ANDROID_JPEG_ORIENTATION, &jpegOrientation, 1);\n> +\tresultMetadata->addEntry(ANDROID_JPEG_ORIENTATION, jpegOrientation);\n>  \texif.setOrientation(jpegOrientation);\n>  \n>  \texif.setSize(streamSize_);\n> @@ -129,7 +130,7 @@ int PostProcessorJpeg::process(const FrameBuffer &source,\n>  \tif (ret) {\n>  \t\texif.setGPSDateTimestamp(*entry.data.i64);\n>  \t\tresultMetadata->addEntry(ANDROID_JPEG_GPS_TIMESTAMP,\n> -\t\t\t\t\t entry.data.i64, 1);\n> +\t\t\t\t\t *entry.data.i64);\n>  \t}\n>  \n>  \tret = requestMetadata.getEntry(ANDROID_JPEG_THUMBNAIL_SIZE, &entry);\n> @@ -140,7 +141,7 @@ int PostProcessorJpeg::process(const FrameBuffer &source,\n>  \n>  \t\tret = requestMetadata.getEntry(ANDROID_JPEG_THUMBNAIL_QUALITY, &entry);\n>  \t\tuint8_t quality = ret ? *entry.data.u8 : 95;\n> -\t\tresultMetadata->addEntry(ANDROID_JPEG_THUMBNAIL_QUALITY, &quality, 1);\n> +\t\tresultMetadata->addEntry(ANDROID_JPEG_THUMBNAIL_QUALITY, quality);\n>  \n>  \t\tif (thumbnailSize != Size(0, 0)) {\n>  \t\t\tstd::vector<unsigned char> thumbnail;\n> @@ -172,7 +173,7 @@ int PostProcessorJpeg::process(const FrameBuffer &source,\n>  \n>  \tret = requestMetadata.getEntry(ANDROID_JPEG_QUALITY, &entry);\n>  \tconst uint8_t quality = ret ? *entry.data.u8 : 95;\n> -\tresultMetadata->addEntry(ANDROID_JPEG_QUALITY, &quality, 1);\n> +\tresultMetadata->addEntry(ANDROID_JPEG_QUALITY, quality);\n>  \n>  \tint jpeg_size = encoder_->encode(source, destination->plane(0),\n>  \t\t\t\t\t exif.data(), quality);\n> @@ -190,7 +191,7 @@ int PostProcessorJpeg::process(const FrameBuffer &source,\n>  \tblob->jpeg_size = jpeg_size;\n>  \n>  \t/* Update the JPEG result Metadata. */\n> -\tresultMetadata->addEntry(ANDROID_JPEG_SIZE, &jpeg_size, 1);\n> +\tresultMetadata->addEntry(ANDROID_JPEG_SIZE, jpeg_size);\n>  \n>  \treturn 0;\n>  }\n> -- \n> 2.27.0\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 66DBDC31F3\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 14 May 2021 06:46:43 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id D5A256891C;\n\tFri, 14 May 2021 08:46: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 4F24C602B4\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 14 May 2021 08:46:42 +0200 (CEST)","from pyrite.rasen.tech (unknown\n\t[IPv6:2400:4051:61:600:2c71:1b79:d06d:5032])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id F17AE9F0;\n\tFri, 14 May 2021 08:46:40 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"RexLNIhZ\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1620974802;\n\tbh=5H0hhrezkg2mJ8BpEfn0fubD74oU2pA7XnjhZSpeQi0=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=RexLNIhZyYEUN8v5GOy/heB+8tZJtDwAQVe0osNZ2TC+/xCTcrPJLXRmYNk8oUPl6\n\tv+St0VCL+4shOVgbGvcmLiiUzPeocXb/4+Vnmxa7HezSztodhGXKNL2RLv2NMgIJ1L\n\tad1m1o8svQ+C19mxBOn0fCVpxfBvO6GPAR4+CG/g=","Date":"Fri, 14 May 2021 15:46:35 +0900","From":"paul.elder@ideasonboard.com","To":"libcamera-devel@lists.libcamera.org","Message-ID":"<20210514064635.GX195599@pyrite.rasen.tech>","References":"<20210514064303.798045-1-paul.elder@ideasonboard.com>\n\t<20210514064303.798045-4-paul.elder@ideasonboard.com>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20210514064303.798045-4-paul.elder@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH v5 3/3] android: jpeg: post_processor:\n\tUse the new metadata functions","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>","Content-Type":"text/plain; charset=\"iso-8859-1\"","Content-Transfer-Encoding":"quoted-printable","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":16940,"web_url":"https://patchwork.libcamera.org/comment/16940/","msgid":"<8b1c3dfe-6e12-cd1a-ce80-48443f1acbc0@ideasonboard.com>","date":"2021-05-14T08:43:48","subject":"Re: [libcamera-devel] [PATCH v5 3/3] android: jpeg: post_processor:\n\tUse the new metadata functions","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"On 14/05/2021 07:46, paul.elder@ideasonboard.com wrote:\n> Hi me,\n\nHi You,\n\n\n> On Fri, May 14, 2021 at 03:43:03PM +0900, Paul Elder wrote:\n>> Now that CameraMetadata supports more convenient functions, use those\n>> instead.\n>>\n>> Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>\n>> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n>>\n>> ---\n>> No change in v5\n>>\n>> No change in v4\n>>\n>> New in v3\n>> ---\n>>  src/android/jpeg/post_processor_jpeg.cpp | 11 ++++++-----\n>>  1 file changed, 6 insertions(+), 5 deletions(-)\n>>\n>> diff --git a/src/android/jpeg/post_processor_jpeg.cpp b/src/android/jpeg/post_processor_jpeg.cpp\n>> index 3bf16996..2ecf5578 100644\n>> --- a/src/android/jpeg/post_processor_jpeg.cpp\n>> +++ b/src/android/jpeg/post_processor_jpeg.cpp\n>> @@ -15,6 +15,7 @@\n>>  #include \"exif.h\"\n>>  \n>>  #include <libcamera/formats.h>\n>> +#include <libcamera/span.h>\n> \n> We don't need this anymore, so this should be removed.\n> \n\nSounds better without it ;-)\n\nAnd with that fixed.\n\nReviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\n\n> \n> Paul\n> \n>>  \n>>  #include \"libcamera/internal/log.h\"\n>>  \n>> @@ -103,7 +104,7 @@ int PostProcessorJpeg::process(const FrameBuffer &source,\n>>  \tret = requestMetadata.getEntry(ANDROID_JPEG_ORIENTATION, &entry);\n>>  \n>>  \tconst uint32_t jpegOrientation = ret ? *entry.data.i32 : 0;\n>> -\tresultMetadata->addEntry(ANDROID_JPEG_ORIENTATION, &jpegOrientation, 1);\n>> +\tresultMetadata->addEntry(ANDROID_JPEG_ORIENTATION, jpegOrientation);\n>>  \texif.setOrientation(jpegOrientation);\n>>  \n>>  \texif.setSize(streamSize_);\n>> @@ -129,7 +130,7 @@ int PostProcessorJpeg::process(const FrameBuffer &source,\n>>  \tif (ret) {\n>>  \t\texif.setGPSDateTimestamp(*entry.data.i64);\n>>  \t\tresultMetadata->addEntry(ANDROID_JPEG_GPS_TIMESTAMP,\n>> -\t\t\t\t\t entry.data.i64, 1);\n>> +\t\t\t\t\t *entry.data.i64);\n>>  \t}\n>>  \n>>  \tret = requestMetadata.getEntry(ANDROID_JPEG_THUMBNAIL_SIZE, &entry);\n>> @@ -140,7 +141,7 @@ int PostProcessorJpeg::process(const FrameBuffer &source,\n>>  \n>>  \t\tret = requestMetadata.getEntry(ANDROID_JPEG_THUMBNAIL_QUALITY, &entry);\n>>  \t\tuint8_t quality = ret ? *entry.data.u8 : 95;\n>> -\t\tresultMetadata->addEntry(ANDROID_JPEG_THUMBNAIL_QUALITY, &quality, 1);\n>> +\t\tresultMetadata->addEntry(ANDROID_JPEG_THUMBNAIL_QUALITY, quality);\n>>  \n>>  \t\tif (thumbnailSize != Size(0, 0)) {\n>>  \t\t\tstd::vector<unsigned char> thumbnail;\n>> @@ -172,7 +173,7 @@ int PostProcessorJpeg::process(const FrameBuffer &source,\n>>  \n>>  \tret = requestMetadata.getEntry(ANDROID_JPEG_QUALITY, &entry);\n>>  \tconst uint8_t quality = ret ? *entry.data.u8 : 95;\n>> -\tresultMetadata->addEntry(ANDROID_JPEG_QUALITY, &quality, 1);\n>> +\tresultMetadata->addEntry(ANDROID_JPEG_QUALITY, quality);\n>>  \n>>  \tint jpeg_size = encoder_->encode(source, destination->plane(0),\n>>  \t\t\t\t\t exif.data(), quality);\n>> @@ -190,7 +191,7 @@ int PostProcessorJpeg::process(const FrameBuffer &source,\n>>  \tblob->jpeg_size = jpeg_size;\n>>  \n>>  \t/* Update the JPEG result Metadata. */\n>> -\tresultMetadata->addEntry(ANDROID_JPEG_SIZE, &jpeg_size, 1);\n>> +\tresultMetadata->addEntry(ANDROID_JPEG_SIZE, jpeg_size);\n>>  \n>>  \treturn 0;\n>>  }\n>> -- \n>> 2.27.0\n>>\n> _______________________________________________\n> libcamera-devel mailing list\n> libcamera-devel@lists.libcamera.org\n> https://lists.libcamera.org/listinfo/libcamera-devel\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 E0741C31F6\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 14 May 2021 08:43:53 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 7D5D068920;\n\tFri, 14 May 2021 10:43:53 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 793B468911\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 14 May 2021 10:43:52 +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 02E5D9F0;\n\tFri, 14 May 2021 10:43:51 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"YszRPs3X\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1620981832;\n\tbh=qAPsehCPE93TCFy5vsHo13vUN/coZTSqsrGx46U3NfQ=;\n\th=Reply-To:Subject:To:References:From:Date:In-Reply-To:From;\n\tb=YszRPs3XGMcIyoObrKHL3h1aUa1q3tEuEKBbomdyBklR5zG1wfaFi0uhq3cTBfpdn\n\tThHlUHJk4I8QotfwfOg3dxY0rGzv74SDf48/s07mq47RxZ5tqQVc1OGYaU57xZm6Js\n\tTq+ZcNL4IVoF4wWwZKRTV4OojCKmx6JSVM8BgwfQ=","To":"paul.elder@ideasonboard.com, libcamera-devel@lists.libcamera.org","References":"<20210514064303.798045-1-paul.elder@ideasonboard.com>\n\t<20210514064303.798045-4-paul.elder@ideasonboard.com>\n\t<20210514064635.GX195599@pyrite.rasen.tech>","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Organization":"Ideas on Board","Message-ID":"<8b1c3dfe-6e12-cd1a-ce80-48443f1acbc0@ideasonboard.com>","Date":"Fri, 14 May 2021 09:43:48 +0100","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101\n\tThunderbird/78.7.1","MIME-Version":"1.0","In-Reply-To":"<20210514064635.GX195599@pyrite.rasen.tech>","Content-Language":"en-GB","Subject":"Re: [libcamera-devel] [PATCH v5 3/3] android: jpeg: post_processor:\n\tUse the new metadata functions","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>","Reply-To":"kieran.bingham@ideasonboard.com","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]