[{"id":14929,"web_url":"https://patchwork.libcamera.org/comment/14929/","msgid":"<20210203190903.6n65iamq5douo434@basti-TUXEDO-Book-XA1510>","date":"2021-02-03T19:09:03","subject":"Re: [libcamera-devel] [PATCH] libcamera: log: add colors to log\n\tlevels","submitter":{"id":78,"url":"https://patchwork.libcamera.org/api/people/78/","name":"Sebastian Fricke","email":"sebastian.fricke@posteo.net"},"content":"Hey Marian,\n\nThank you for the patch.\nThis looks better than before, I tested it on my machine and it worked\nwithout problems.\nIf you like to you can add:\nTested-by: Sebastian Fricke <sebastian.fricke@posteo.net>\n\nGreetings,\nSebastian\n\nOn 03.02.2021 19:17, Marian Cichy wrote:\n>mono-colored wall of logs can be hard to read and doesn't show the level\n>of failure at a first glance. By adding colors to the log level\n>categories, it is much easier to scroll through logs and find important\n>entries.\n>---\n> src/libcamera/log.cpp | 10 +++++-----\n> 1 file changed, 5 insertions(+), 5 deletions(-)\n>\n>diff --git a/src/libcamera/log.cpp b/src/libcamera/log.cpp\n>index 45c7c2d2..3ad9c3de 100644\n>--- a/src/libcamera/log.cpp\n>+++ b/src/libcamera/log.cpp\n>@@ -85,11 +85,11 @@ static int log_severity_to_syslog(LogSeverity severity)\n> static const char *log_severity_name(LogSeverity severity)\n> {\n> \tstatic const char *const names[] = {\n>-\t\t\"DEBUG\",\n>-\t\t\" INFO\",\n>-\t\t\" WARN\",\n>-\t\t\"ERROR\",\n>-\t\t\"FATAL\",\n>+\t\t\"\\033[1m\\033[37mDEBUG\\033[0m\",\n>+\t\t\"\\033[1m\\033[32m INFO\\033[0m\",\n>+\t\t\"\\033[1m\\033[33m WARN\\033[0m\",\n>+\t\t\"\\033[1m\\033[31mERROR\\033[0m\",\n>+\t\t\"\\033[1m\\033[35mFATAL\\033[0m\",\n> \t};\n>\n> \tif (static_cast<unsigned int>(severity) < std::size(names))\n>-- \n>2.20.1\n>\n>_______________________________________________\n>libcamera-devel mailing list\n>libcamera-devel@lists.libcamera.org\n>https://lists.libcamera.org/listinfo/libcamera-devel","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 A2C6BBD160\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed,  3 Feb 2021 19:09:07 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 310BF68452;\n\tWed,  3 Feb 2021 20:09:07 +0100 (CET)","from mout01.posteo.de (mout01.posteo.de [185.67.36.65])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 38C7868447\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  3 Feb 2021 20:09:05 +0100 (CET)","from submission (posteo.de [89.146.220.130]) \n\tby mout01.posteo.de (Postfix) with ESMTPS id 90E2A16005F\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  3 Feb 2021 20:09:04 +0100 (CET)","from customer (localhost [127.0.0.1])\n\tby submission (posteo.de) with ESMTPSA id 4DWB736lSwz9rxK;\n\tWed,  3 Feb 2021 20:09:03 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=posteo.net header.i=@posteo.net\n\theader.b=\"P2SRFk4t\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;\n\tt=1612379344; bh=yNOu72h0pJTuzP0/NmyOFjSsf/I6M7bwlirTIZphSMU=;\n\th=Date:From:To:Cc:Subject:From;\n\tb=P2SRFk4t+JR3z8cNGmow3DQu1DKVCSIJJX/cPQqxRq8Q1k2owqvlKNxnhNwuYOgmc\n\tqHWXnc6mm9T5m6ZFotwU6+qTuobZaJZKvT+9kh7nlNpvBdZsnUH0Wdn4M+lXks66ze\n\tHMiYS/KSdspoLKuwDpG3sMeQs4UEDJyVCKKxCO5GuFpY1Nos5z5WLgB6KTwTHhDnUK\n\tvFd5jgWkmsq4U4fQ0lTR/63JPiDF4BRtJNmSQijuJZIl/sBQOWx7WY/YqEDFpYAAHS\n\t8ACMUHVuL7we9QIj7GS1CQQTXJy+ra6JUSaulMfP2Zbv8vqs4rON1h8Vr/l4iFYiRE\n\t2wX+kSZQEpkvA==","Date":"Wed, 3 Feb 2021 20:09:03 +0100","From":"Sebastian Fricke <sebastian.fricke@posteo.net>","To":"Marian Cichy <m.cichy@pengutronix.de>","Message-ID":"<20210203190903.6n65iamq5douo434@basti-TUXEDO-Book-XA1510>","References":"<20210203181746.22028-1-m.cichy@pengutronix.de>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20210203181746.22028-1-m.cichy@pengutronix.de>","Subject":"Re: [libcamera-devel] [PATCH] libcamera: log: add colors to log\n\tlevels","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@lists.libcamera.org","Content-Transfer-Encoding":"7bit","Content-Type":"text/plain; charset=\"us-ascii\"; Format=\"flowed\"","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":14930,"web_url":"https://patchwork.libcamera.org/comment/14930/","msgid":"<179543de-7258-f761-1c98-0dcb48c16d34@pengutronix.de>","date":"2021-02-03T19:13:41","subject":"Re: [libcamera-devel] [PATCH] libcamera: log: add colors to log\n\tlevels","submitter":{"id":81,"url":"https://patchwork.libcamera.org/api/people/81/","name":"Marian Cichy","email":"mci@pengutronix.de"},"content":"Hi Sebastian,\n\nthanks, I also just realized that I probably should sign-off, right?\n\nshould I send a V2?\n\nregards,\n\nmarian\n\nOn 2/3/21 8:09 PM, Sebastian Fricke wrote:\n> Hey Marian,\n>\n> Thank you for the patch.\n> This looks better than before, I tested it on my machine and it worked\n> without problems.\n> If you like to you can add:\n> Tested-by: Sebastian Fricke <sebastian.fricke@posteo.net>\n>\n> Greetings,\n> Sebastian\n>\n> On 03.02.2021 19:17, Marian Cichy wrote:\n>> mono-colored wall of logs can be hard to read and doesn't show the level\n>> of failure at a first glance. By adding colors to the log level\n>> categories, it is much easier to scroll through logs and find important\n>> entries.\n>> ---\n>> src/libcamera/log.cpp | 10 +++++-----\n>> 1 file changed, 5 insertions(+), 5 deletions(-)\n>>\n>> diff --git a/src/libcamera/log.cpp b/src/libcamera/log.cpp\n>> index 45c7c2d2..3ad9c3de 100644\n>> --- a/src/libcamera/log.cpp\n>> +++ b/src/libcamera/log.cpp\n>> @@ -85,11 +85,11 @@ static int log_severity_to_syslog(LogSeverity \n>> severity)\n>> static const char *log_severity_name(LogSeverity severity)\n>> {\n>>     static const char *const names[] = {\n>> -        \"DEBUG\",\n>> -        \" INFO\",\n>> -        \" WARN\",\n>> -        \"ERROR\",\n>> -        \"FATAL\",\n>> +        \"\\033[1m\\033[37mDEBUG\\033[0m\",\n>> +        \"\\033[1m\\033[32m INFO\\033[0m\",\n>> +        \"\\033[1m\\033[33m WARN\\033[0m\",\n>> +        \"\\033[1m\\033[31mERROR\\033[0m\",\n>> +        \"\\033[1m\\033[35mFATAL\\033[0m\",\n>>     };\n>>\n>>     if (static_cast<unsigned int>(severity) < std::size(names))\n>> -- \n>> 2.20.1\n>>\n>> _______________________________________________\n>> libcamera-devel mailing list\n>> libcamera-devel@lists.libcamera.org\n>> https://lists.libcamera.org/listinfo/libcamera-devel\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 41B6FBD161\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed,  3 Feb 2021 19:13:44 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id CDCC468452;\n\tWed,  3 Feb 2021 20:13:43 +0100 (CET)","from metis.ext.pengutronix.de (metis.ext.pengutronix.de\n\t[IPv6:2001:67c:670:201:290:27ff:fe1d:cc33])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id C423268447\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  3 Feb 2021 20:13:42 +0100 (CET)","from gallifrey.ext.pengutronix.de\n\t([2001:67c:670:201:5054:ff:fe8d:eefb] helo=[127.0.0.1])\n\tby metis.ext.pengutronix.de with esmtp (Exim 4.92)\n\t(envelope-from <mci@pengutronix.de>)\n\tid 1l7Naw-00033I-8k; Wed, 03 Feb 2021 20:13:42 +0100"],"To":"Sebastian Fricke <sebastian.fricke@posteo.net>,\n\tMarian Cichy <m.cichy@pengutronix.de>","References":"<20210203181746.22028-1-m.cichy@pengutronix.de>\n\t<20210203190903.6n65iamq5douo434@basti-TUXEDO-Book-XA1510>","From":"Marian Cichy <mci@pengutronix.de>","Message-ID":"<179543de-7258-f761-1c98-0dcb48c16d34@pengutronix.de>","Date":"Wed, 3 Feb 2021 20:13:41 +0100","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101\n\tThunderbird/78.5.0","MIME-Version":"1.0","In-Reply-To":"<20210203190903.6n65iamq5douo434@basti-TUXEDO-Book-XA1510>","Content-Language":"en-US","X-SA-Exim-Connect-IP":"2001:67c:670:201:5054:ff:fe8d:eefb","X-SA-Exim-Mail-From":"mci@pengutronix.de","X-SA-Exim-Scanned":"No (on metis.ext.pengutronix.de);\n\tSAEximRunCond expanded to false","X-PTX-Original-Recipient":"libcamera-devel@lists.libcamera.org","Subject":"Re: [libcamera-devel] [PATCH] libcamera: log: add colors to log\n\tlevels","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@lists.libcamera.org","Content-Transfer-Encoding":"base64","Content-Type":"text/plain; charset=\"utf-8\"; Format=\"flowed\"","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":14931,"web_url":"https://patchwork.libcamera.org/comment/14931/","msgid":"<cc136712-8762-0e4c-7545-4b12006ca535@ideasonboard.com>","date":"2021-02-03T19:26:51","subject":"Re: [libcamera-devel] [PATCH] libcamera: log: add colors to log\n\tlevels","submitter":{"id":75,"url":"https://patchwork.libcamera.org/api/people/75/","name":"Jean-Michel Hautbois","email":"jeanmichel.hautbois@ideasonboard.com"},"content":"Hi Marien,\n\nThanks for the patch !\n\nOn 03/02/2021 20:13, Marian Cichy wrote:\n> Hi Sebastian,\n> \n> thanks, I also just realized that I probably should sign-off, right?\n> \n> should I send a V2?\n> \n> regards,\n> \n> marian\n> \n> On 2/3/21 8:09 PM, Sebastian Fricke wrote:\n>> Hey Marian,\n>>\n>> Thank you for the patch.\n>> This looks better than before, I tested it on my machine and it worked\n>> without problems.\n>> If you like to you can add:\n>> Tested-by: Sebastian Fricke <sebastian.fricke@posteo.net>\n>>\n>> Greetings,\n>> Sebastian\n>>\n>> On 03.02.2021 19:17, Marian Cichy wrote:\n>>> mono-colored wall of logs can be hard to read and doesn't show the level\n>>> of failure at a first glance. By adding colors to the log level\n>>> categories, it is much easier to scroll through logs and find important\n>>> entries.\n>>> ---\n>>> src/libcamera/log.cpp | 10 +++++-----\n>>> 1 file changed, 5 insertions(+), 5 deletions(-)\n>>>\n>>> diff --git a/src/libcamera/log.cpp b/src/libcamera/log.cpp\n>>> index 45c7c2d2..3ad9c3de 100644\n>>> --- a/src/libcamera/log.cpp\n>>> +++ b/src/libcamera/log.cpp\n>>> @@ -85,11 +85,11 @@ static int log_severity_to_syslog(LogSeverity\n>>> severity)\n>>> static const char *log_severity_name(LogSeverity severity)\n>>> {\n>>>     static const char *const names[] = {\n>>> -        \"DEBUG\",\n>>> -        \" INFO\",\n>>> -        \" WARN\",\n>>> -        \"ERROR\",\n>>> -        \"FATAL\",\n>>> +        \"\\033[1m\\033[37mDEBUG\\033[0m\",\n>>> +        \"\\033[1m\\033[32m INFO\\033[0m\",\n>>> +        \"\\033[1m\\033[33m WARN\\033[0m\",\n>>> +        \"\\033[1m\\033[31mERROR\\033[0m\",\n>>> +        \"\\033[1m\\033[35mFATAL\\033[0m\",\n>>>     };\n\nI like the idea, but I would prefer having the possibility to\nenable/disable it at runtime, as for copy/pasting debug logs it is\neasier to read uncolored :-).\n\nJM","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 84F88BD160\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed,  3 Feb 2021 19:26:54 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 1028168453;\n\tWed,  3 Feb 2021 20:26:54 +0100 (CET)","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 99C0A68447\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  3 Feb 2021 20:26:52 +0100 (CET)","from [IPv6:2a01:e0a:169:7140:523c:c332:c9d6:8fef] (unknown\n\t[IPv6:2a01:e0a:169:7140:523c:c332:c9d6:8fef])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 275B8580;\n\tWed,  3 Feb 2021 20:26:52 +0100 (CET)"],"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=\"UswAXJh7\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1612380412;\n\tbh=hlVuX6Cpasg44Voes00IB7UGg9FMfMneHWXYEcqEqJI=;\n\th=Subject:To:Cc:References:From:Date:In-Reply-To:From;\n\tb=UswAXJh7T1xnkx2Gy/F93E+6sC78EwIh3q0M3g0eDrq4UksHDNmDBA6f7XtzCWnFl\n\tmOq/WKMpAAWOW9b600JlAfcGyqqhCtc19wiJySsXovaN01GvJvlRvXwhy/8ofl+rJI\n\txxk1yFTHfdDgyZ3N9eE4dE6MleIKk7rLs6xXPIAY=","To":"Marian Cichy <mci@pengutronix.de>,\n\tSebastian Fricke <sebastian.fricke@posteo.net>,\n\tMarian Cichy <m.cichy@pengutronix.de>","References":"<20210203181746.22028-1-m.cichy@pengutronix.de>\n\t<20210203190903.6n65iamq5douo434@basti-TUXEDO-Book-XA1510>\n\t<179543de-7258-f761-1c98-0dcb48c16d34@pengutronix.de>","From":"Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>","Message-ID":"<cc136712-8762-0e4c-7545-4b12006ca535@ideasonboard.com>","Date":"Wed, 3 Feb 2021 20:26:51 +0100","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101\n\tThunderbird/78.6.1","MIME-Version":"1.0","In-Reply-To":"<179543de-7258-f761-1c98-0dcb48c16d34@pengutronix.de>","Content-Language":"en-US","Subject":"Re: [libcamera-devel] [PATCH] libcamera: log: add colors to log\n\tlevels","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@lists.libcamera.org","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>"}},{"id":14932,"web_url":"https://patchwork.libcamera.org/comment/14932/","msgid":"<20210203193026.oaxifukyzkuyskh4@basti-TUXEDO-Book-XA1510>","date":"2021-02-03T19:30:26","subject":"Re: [libcamera-devel] [PATCH] libcamera: log: add colors to log\n\tlevels","submitter":{"id":78,"url":"https://patchwork.libcamera.org/api/people/78/","name":"Sebastian Fricke","email":"sebastian.fricke@posteo.net"},"content":"On 03.02.2021 20:13, Marian Cichy wrote:\n>Hi Sebastian,\n>\n>thanks, I also just realized that I probably should sign-off, right?\n>\n>should I send a V2?\n\nI would probably not send it right away and wait for some feedback from\nthe others first.\n\nGreetings,\nSebastian\n\n>\n>regards,\n>\n>marian\n>\n>On 2/3/21 8:09 PM, Sebastian Fricke wrote:\n>>Hey Marian,\n>>\n>>Thank you for the patch.\n>>This looks better than before, I tested it on my machine and it worked\n>>without problems.\n>>If you like to you can add:\n>>Tested-by: Sebastian Fricke <sebastian.fricke@posteo.net>\n>>\n>>Greetings,\n>>Sebastian\n>>\n>>On 03.02.2021 19:17, Marian Cichy wrote:\n>>>mono-colored wall of logs can be hard to read and doesn't show the level\n>>>of failure at a first glance. By adding colors to the log level\n>>>categories, it is much easier to scroll through logs and find important\n>>>entries.\n>>>---\n>>>src/libcamera/log.cpp | 10 +++++-----\n>>>1 file changed, 5 insertions(+), 5 deletions(-)\n>>>\n>>>diff --git a/src/libcamera/log.cpp b/src/libcamera/log.cpp\n>>>index 45c7c2d2..3ad9c3de 100644\n>>>--- a/src/libcamera/log.cpp\n>>>+++ b/src/libcamera/log.cpp\n>>>@@ -85,11 +85,11 @@ static int log_severity_to_syslog(LogSeverity \n>>>severity)\n>>>static const char *log_severity_name(LogSeverity severity)\n>>>{\n>>>    static const char *const names[] = {\n>>>-        \"DEBUG\",\n>>>-        \" INFO\",\n>>>-        \" WARN\",\n>>>-        \"ERROR\",\n>>>-        \"FATAL\",\n>>>+        \"\\033[1m\\033[37mDEBUG\\033[0m\",\n>>>+        \"\\033[1m\\033[32m INFO\\033[0m\",\n>>>+        \"\\033[1m\\033[33m WARN\\033[0m\",\n>>>+        \"\\033[1m\\033[31mERROR\\033[0m\",\n>>>+        \"\\033[1m\\033[35mFATAL\\033[0m\",\n>>>    };\n>>>\n>>>    if (static_cast<unsigned int>(severity) < std::size(names))\n>>>-- \n>>>2.20.1\n>>>\n>>>_______________________________________________\n>>>libcamera-devel mailing list\n>>>libcamera-devel@lists.libcamera.org\n>>>https://lists.libcamera.org/listinfo/libcamera-devel\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 2B86ABD160\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed,  3 Feb 2021 19:30:31 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id AA46D68454;\n\tWed,  3 Feb 2021 20:30:30 +0100 (CET)","from mout02.posteo.de (mout02.posteo.de [185.67.36.66])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 478D768447\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  3 Feb 2021 20:30:29 +0100 (CET)","from submission (posteo.de [89.146.220.130]) \n\tby mout02.posteo.de (Postfix) with ESMTPS id 647D2240101\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  3 Feb 2021 20:30:28 +0100 (CET)","from customer (localhost [127.0.0.1])\n\tby submission (posteo.de) with ESMTPSA id 4DWBbl3Bgqz6tmW;\n\tWed,  3 Feb 2021 20:30:27 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=posteo.net header.i=@posteo.net\n\theader.b=\"l7sGdvmG\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;\n\tt=1612380628; bh=RKva1JLHMQYHZYR8BWX8RiZIjT5PjUhF2OOUryP2Lpc=;\n\th=Date:From:To:Cc:Subject:From;\n\tb=l7sGdvmGF03f/prMDD+24CLkO+2tv/VbbZfozCIfEH0kf+Kdc7Chrcna8JCPbQAS3\n\tTUN/8Ro0mCgHXe8ey/vwQRdjnky4qw63WJ/3Y87g7JDRQrg/70is+T/Hnf76ZhWpBu\n\tIOlRa9/SjFj39zYS2hzPBI62D7Lr5wW7yFQyXAYFtTkqdglKoLhvdRziCVFjATY8yO\n\tSqqZWCQf6DIjg+3Vom16YQWpejsAM0lGmV+nHFvsZBaovbemaIwuJEupw6DFrNumEv\n\thXJej9YBS8HOgClR2pOBy3j1Xtdi6JKKm25QfPt17aZjWNUBCLsOPu5dLwrrlcHeLb\n\tENmhdf2eb2yHg==","Date":"Wed, 3 Feb 2021 20:30:26 +0100","From":"Sebastian Fricke <sebastian.fricke@posteo.net>","To":"Marian Cichy <mci@pengutronix.de>","Message-ID":"<20210203193026.oaxifukyzkuyskh4@basti-TUXEDO-Book-XA1510>","References":"<20210203181746.22028-1-m.cichy@pengutronix.de>\n\t<20210203190903.6n65iamq5douo434@basti-TUXEDO-Book-XA1510>\n\t<179543de-7258-f761-1c98-0dcb48c16d34@pengutronix.de>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<179543de-7258-f761-1c98-0dcb48c16d34@pengutronix.de>","Subject":"Re: [libcamera-devel] [PATCH] libcamera: log: add colors to log\n\tlevels","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@lists.libcamera.org,\n\tMarian Cichy <m.cichy@pengutronix.de>","Content-Transfer-Encoding":"base64","Content-Type":"text/plain; charset=\"utf-8\"; Format=\"flowed\"","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":14933,"web_url":"https://patchwork.libcamera.org/comment/14933/","msgid":"<2a06036c-9319-0f92-1073-ed579ac2b5aa@linaro.org>","date":"2021-02-03T19:58:42","subject":"Re: [libcamera-devel] [PATCH] libcamera: log: add colors to log\n\tlevels","submitter":{"id":25,"url":"https://patchwork.libcamera.org/api/people/25/","name":"Andrey Konovalov","email":"andrey.konovalov@linaro.org"},"content":"Hi,\n\nOn 03.02.2021 22:26, Jean-Michel Hautbois wrote:\n> Hi Marien,\n> \n> Thanks for the patch !\n> \n> On 03/02/2021 20:13, Marian Cichy wrote:\n>> Hi Sebastian,\n>>\n>> thanks, I also just realized that I probably should sign-off, right?\n>>\n>> should I send a V2?\n>>\n>> regards,\n>>\n>> marian\n>>\n>> On 2/3/21 8:09 PM, Sebastian Fricke wrote:\n>>> Hey Marian,\n>>>\n>>> Thank you for the patch.\n>>> This looks better than before, I tested it on my machine and it worked\n>>> without problems.\n>>> If you like to you can add:\n>>> Tested-by: Sebastian Fricke <sebastian.fricke@posteo.net>\n>>>\n>>> Greetings,\n>>> Sebastian\n>>>\n>>> On 03.02.2021 19:17, Marian Cichy wrote:\n>>>> mono-colored wall of logs can be hard to read and doesn't show the level\n>>>> of failure at a first glance. By adding colors to the log level\n>>>> categories, it is much easier to scroll through logs and find important\n>>>> entries.\n>>>> ---\n>>>> src/libcamera/log.cpp | 10 +++++-----\n>>>> 1 file changed, 5 insertions(+), 5 deletions(-)\n>>>>\n>>>> diff --git a/src/libcamera/log.cpp b/src/libcamera/log.cpp\n>>>> index 45c7c2d2..3ad9c3de 100644\n>>>> --- a/src/libcamera/log.cpp\n>>>> +++ b/src/libcamera/log.cpp\n>>>> @@ -85,11 +85,11 @@ static int log_severity_to_syslog(LogSeverity\n>>>> severity)\n>>>> static const char *log_severity_name(LogSeverity severity)\n>>>> {\n>>>>      static const char *const names[] = {\n>>>> -        \"DEBUG\",\n>>>> -        \" INFO\",\n>>>> -        \" WARN\",\n>>>> -        \"ERROR\",\n>>>> -        \"FATAL\",\n>>>> +        \"\\033[1m\\033[37mDEBUG\\033[0m\",\n>>>> +        \"\\033[1m\\033[32m INFO\\033[0m\",\n>>>> +        \"\\033[1m\\033[33m WARN\\033[0m\",\n>>>> +        \"\\033[1m\\033[31mERROR\\033[0m\",\n>>>> +        \"\\033[1m\\033[35mFATAL\\033[0m\",\n>>>>      };\n> \n> I like the idea, but I would prefer having the possibility to\n> enable/disable it at runtime, as for copy/pasting debug logs it is\n> easier to read uncolored :-).\n\nI second this proposal!\nMaybe something similar to GST_DEBUG_NO_COLOR in gstreamer.\n\nThanks,\nAndrey\n\n> JM\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 982BABD161\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed,  3 Feb 2021 19:58:50 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 1DCF568455;\n\tWed,  3 Feb 2021 20:58:50 +0100 (CET)","from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com\n\t[IPv6:2a00:1450:4864:20::12e])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 1B34368447\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  3 Feb 2021 20:58:48 +0100 (CET)","by mail-lf1-x12e.google.com with SMTP id p21so919048lfu.11\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 03 Feb 2021 11:58:48 -0800 (PST)","from [192.168.118.216] ([85.249.43.69])\n\tby smtp.gmail.com with ESMTPSA id\n\tv10sm337327lfg.290.2021.02.03.11.58.46\n\t(version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n\tWed, 03 Feb 2021 11:58:46 -0800 (PST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=linaro.org header.i=@linaro.org\n\theader.b=\"yLzr7+GE\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google;\n\th=subject:to:cc:references:from:message-id:date:user-agent\n\t:mime-version:in-reply-to:content-language:content-transfer-encoding; \n\tbh=HUJ1cQVWGCX3FpO5CHAo/aFZvxdrrr6yw4FSQEIcCvg=;\n\tb=yLzr7+GEu7+lBXPlOYT0/ZcY1InCCt/h0MBZImCYkb1Dnce4UsyO+ttZunVefOb72U\n\tOdNL2elHmBQg73zIDkAEX6xPNBic+9AxKvObAN3N2S2yED6EyTOD45thmvAp5JCFpmyM\n\to82vYhxBWrBT7qGNcFCzHdDzOFduyvPDTqSCmLr688gGWvrS16LX5efedZcyyplWC9en\n\tWcFzlIAio7H6yXoFv3xvBxTJ8tHVUlIDalVq8vYIAcBTN8mfM3zlHpVpxxe4baMPYUJT\n\tetLc6EhU7wkoYcLI4t5GQHnLeeDYRYoFWwmnHLJfTAiVOI7qFY1z6HcTXtw2/MG6bt+J\n\tCZGA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:subject:to:cc:references:from:message-id:date\n\t:user-agent:mime-version:in-reply-to:content-language\n\t:content-transfer-encoding;\n\tbh=HUJ1cQVWGCX3FpO5CHAo/aFZvxdrrr6yw4FSQEIcCvg=;\n\tb=ZoJ3GXX5FmcKuCditOg8O5Ys+s3KfOOvKb1ab4svNJeKa+9jlKJGG+B0heejyoaXuu\n\tF/GwTOlelMC2scXqmhZMP4Zm+TfIGxTkNRwX44altrY9mg/FsHBh4+F5XMlTf2tR5IT/\n\th1acQqaHGV/Ba5Oy2erOMU2shdJDg7IJ7szBKDlxfGlHfZKiFhODuAM5fKF/7XlzmWho\n\tnmvQBrL8FqFhksFCeupqVqndNGURnyxmWk7yp1xi29FxStE3WpfpJrf2Ol4o7eueuPL7\n\ti5mRC61puJ0hQTMyx8FG3CuqJgDOWSfXc5ifXQ+xj81DyA+wMSRmKwttsPO6xX+4LYnu\n\tQzow==","X-Gm-Message-State":"AOAM530+VjInfGG+0d+JD93wtS2B2EaLAxtCjM3Fg1dlaxuxiuRwUwhr\n\tVgehayPgRiAQ1zbB6WxN9OfMTw==","X-Google-Smtp-Source":"ABdhPJzWkyl1Gs/wbYIWZt2R5t0v6J5em1Z0XaPDDKRrHDOsPa08btOeG+wRgpHO3vFtzn2180gs1g==","X-Received":"by 2002:ac2:54ac:: with SMTP id\n\tw12mr2743627lfk.514.1612382327398; \n\tWed, 03 Feb 2021 11:58:47 -0800 (PST)","To":"Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>,\n\tMarian Cichy <mci@pengutronix.de>, Marian Cichy <m.cichy@pengutronix.de>","References":"<20210203181746.22028-1-m.cichy@pengutronix.de>\n\t<20210203190903.6n65iamq5douo434@basti-TUXEDO-Book-XA1510>\n\t<179543de-7258-f761-1c98-0dcb48c16d34@pengutronix.de>\n\t<cc136712-8762-0e4c-7545-4b12006ca535@ideasonboard.com>","From":"Andrey Konovalov <andrey.konovalov@linaro.org>","Message-ID":"<2a06036c-9319-0f92-1073-ed579ac2b5aa@linaro.org>","Date":"Wed, 3 Feb 2021 22:58:42 +0300","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101\n\tThunderbird/68.10.0","MIME-Version":"1.0","In-Reply-To":"<cc136712-8762-0e4c-7545-4b12006ca535@ideasonboard.com>","Content-Language":"en-US","Subject":"Re: [libcamera-devel] [PATCH] libcamera: log: add colors to log\n\tlevels","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@lists.libcamera.org","Content-Transfer-Encoding":"base64","Content-Type":"text/plain; charset=\"utf-8\"; Format=\"flowed\"","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":14934,"web_url":"https://patchwork.libcamera.org/comment/14934/","msgid":"<YBsei7KN6DSHpXoc@pendragon.ideasonboard.com>","date":"2021-02-03T22:07:07","subject":"Re: [libcamera-devel] [PATCH] libcamera: log: add colors to log\n\tlevels","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Marian,\n\nThank you for the patch.\n\nOn Wed, Feb 03, 2021 at 10:58:42PM +0300, Andrey Konovalov wrote:\n> On 03.02.2021 22:26, Jean-Michel Hautbois wrote:\n> > On 03/02/2021 20:13, Marian Cichy wrote:\n> >> Hi Sebastian,\n> >>\n> >> thanks, I also just realized that I probably should sign-off, right?\n> >>\n> >> should I send a V2?\n\nThat's right. A Signed-off-by line is required as explained in\nDocumentation/contributing.rst.\n\n> >> On 2/3/21 8:09 PM, Sebastian Fricke wrote:\n> >>> Hey Marian,\n> >>>\n> >>> Thank you for the patch.\n> >>> This looks better than before, I tested it on my machine and it worked\n> >>> without problems.\n> >>> If you like to you can add:\n> >>> Tested-by: Sebastian Fricke <sebastian.fricke@posteo.net>\n> >>>\n> >>> Greetings,\n> >>> Sebastian\n> >>>\n> >>> On 03.02.2021 19:17, Marian Cichy wrote:\n> >>>> mono-colored wall of logs can be hard to read and doesn't show the level\n> >>>> of failure at a first glance. By adding colors to the log level\n> >>>> categories, it is much easier to scroll through logs and find important\n> >>>> entries.\n> >>>> ---\n> >>>> src/libcamera/log.cpp | 10 +++++-----\n> >>>> 1 file changed, 5 insertions(+), 5 deletions(-)\n> >>>>\n> >>>> diff --git a/src/libcamera/log.cpp b/src/libcamera/log.cpp\n> >>>> index 45c7c2d2..3ad9c3de 100644\n> >>>> --- a/src/libcamera/log.cpp\n> >>>> +++ b/src/libcamera/log.cpp\n> >>>> @@ -85,11 +85,11 @@ static int log_severity_to_syslog(LogSeverity\n> >>>> severity)\n> >>>> static const char *log_severity_name(LogSeverity severity)\n> >>>> {\n> >>>>      static const char *const names[] = {\n> >>>> -        \"DEBUG\",\n> >>>> -        \" INFO\",\n> >>>> -        \" WARN\",\n> >>>> -        \"ERROR\",\n> >>>> -        \"FATAL\",\n> >>>> +        \"\\033[1m\\033[37mDEBUG\\033[0m\",\n> >>>> +        \"\\033[1m\\033[32m INFO\\033[0m\",\n> >>>> +        \"\\033[1m\\033[33m WARN\\033[0m\",\n> >>>> +        \"\\033[1m\\033[31mERROR\\033[0m\",\n> >>>> +        \"\\033[1m\\033[35mFATAL\\033[0m\",\n> >>>>      };\n> > \n> > I like the idea, but I would prefer having the possibility to\n> > enable/disable it at runtime, as for copy/pasting debug logs it is\n> > easier to read uncolored :-).\n> \n> I second this proposal!\n> Maybe something similar to GST_DEBUG_NO_COLOR in gstreamer.\n\nThis sounds good to me, but I think we should go one step further and\ndisable colours by default when the log target isn't a terminal.\nlibcamera supports 3 log targets so far:\n\n- LoggingTargetSyslog\n- LoggingTargetFile\n- LoggingTargetStream\n\nWhen logging to syslog or to a file, I think we should disable colours\nby default. When logging to a stream, we should check if the stream\nrefers to a terminal, and disable colours if it doesn't. The question is\nhow to do so. The isatty() function is a good start, but it takes a file\ndescriptor, and as far as I can tell, there's no way to get a file\ndescriptor from an std::ostream.","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 5E059BD160\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed,  3 Feb 2021 22:07:31 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id DC9F168455;\n\tWed,  3 Feb 2021 23:07:30 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id B742E68447\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  3 Feb 2021 23:07:29 +0100 (CET)","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 20686580;\n\tWed,  3 Feb 2021 23:07:29 +0100 (CET)"],"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=\"TaKGOUU0\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1612390049;\n\tbh=KW1qbMF5r3vj128zXhb6qlITIAcy8z70dFtUNfEhV9o=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=TaKGOUU0+BNBHxhZrTZPMtrEunCapRpeR4PArY1gtmnDrEE24LZcZi/HbkWZ1q8tQ\n\txTy2arUYDNrIPWjsuCLxyXHV3OZJv9OnQclXoYWLhy8BgPNblCW9krVimklmAUjcp2\n\t9RD/S+RlcmXtosRZfgdM6194WV/K87uV/ZWQdZXg=","Date":"Thu, 4 Feb 2021 00:07:07 +0200","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Marian Cichy <m.cichy@pengutronix.de>","Message-ID":"<YBsei7KN6DSHpXoc@pendragon.ideasonboard.com>","References":"<20210203181746.22028-1-m.cichy@pengutronix.de>\n\t<20210203190903.6n65iamq5douo434@basti-TUXEDO-Book-XA1510>\n\t<179543de-7258-f761-1c98-0dcb48c16d34@pengutronix.de>\n\t<cc136712-8762-0e4c-7545-4b12006ca535@ideasonboard.com>\n\t<2a06036c-9319-0f92-1073-ed579ac2b5aa@linaro.org>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<2a06036c-9319-0f92-1073-ed579ac2b5aa@linaro.org>","Subject":"Re: [libcamera-devel] [PATCH] libcamera: log: add colors to log\n\tlevels","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@lists.libcamera.org","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>"}}]