[{"id":11553,"web_url":"https://patchwork.libcamera.org/comment/11553/","msgid":"<b2e773e6-5f0f-a5bd-2d38-6d3a166f6b72@ideasonboard.com>","date":"2020-07-24T13:57:28","subject":"Re: [libcamera-devel] [PATCH 1/3] cam: Add option to disallow\n\tadjusting of requested formats","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Hi Niklas,\n\nI can see some definite value in this option!\n\nOn 24/07/2020 14:43, Niklas Söderlund wrote:\n> Add an '--strict-formats' option which fails the camera configuration\n\ns/an/a/\n\n> step if the format is adjusted,\n> \n> Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n> ---\n>  src/cam/main.cpp | 17 ++++++++++++++++-\n>  src/cam/main.h   |  1 +\n>  2 files changed, 17 insertions(+), 1 deletion(-)\n> \n> diff --git a/src/cam/main.cpp b/src/cam/main.cpp\n> index 2512fe9da782165b..a223563ad37e9fe5 100644\n> --- a/src/cam/main.cpp\n> +++ b/src/cam/main.cpp\n> @@ -49,12 +49,15 @@ private:\n>  \tstd::shared_ptr<Camera> camera_;\n>  \tstd::unique_ptr<libcamera::CameraConfiguration> config_;\n>  \tEventLoop *loop_;\n> +\n> +\tbool strictFormats_;\n>  };\n>  \n>  CamApp *CamApp::app_ = nullptr;\n>  \n>  CamApp::CamApp()\n> -\t: cm_(nullptr), camera_(nullptr), config_(nullptr), loop_(nullptr)\n> +\t: cm_(nullptr), camera_(nullptr), config_(nullptr), loop_(nullptr),\n> +\t  strictFormats_(false)\n>  {\n>  \tCamApp::app_ = this;\n>  }\n> @@ -77,6 +80,9 @@ int CamApp::init(int argc, char **argv)\n>  \tif (ret < 0)\n>  \t\treturn ret;\n>  \n> +\tif (options_.isSet(OptStrictFormats))\n> +\t\tstrictFormats_ = true;\n> +\n>  \tcm_ = new CameraManager();\n>  \n>  \tret = cm_->start();\n> @@ -179,6 +185,9 @@ int CamApp::parseOptions(int argc, char *argv[])\n>  \t\t\t \"list-controls\");\n>  \tparser.addOption(OptListProperties, OptionNone, \"List cameras properties\",\n>  \t\t\t \"list-properties\");\n> +\tparser.addOption(OptStrictFormats, OptionNone,\n> +\t\t\t \"Do not allow requested stream format(s) to be adjusted\",\n> +\t\t\t \"strict-formats\");\n>  \n>  \toptions_ = parser.parse(argc, argv);\n>  \tif (!options_.valid())\n> @@ -214,6 +223,12 @@ int CamApp::prepareConfig()\n>  \tcase CameraConfiguration::Valid:\n>  \t\tbreak;\n>  \tcase CameraConfiguration::Adjusted:\n> +\t\tif (strictFormats_) {\n> +\t\t\tstd::cout << \"Adjustng camera configuration not allowed\"\n\ns/Adjustng/Adjusting/\n\n\nCould/should we print here what the stream configurations were adjusted\n/to/ to help debugging?\n\n\nOtherwise,\n\n> +\t\t\t\t  << std::endl;\n> +\t\t\tconfig_.reset();\n\nIs this (reset) essential?\n\nOtherwise,\n\nReviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\n\n\n> +\t\t\treturn -EINVAL;\n> +\t\t}\n>  \t\tstd::cout << \"Camera configuration adjusted\" << std::endl;\n>  \t\tbreak;\n>  \tcase CameraConfiguration::Invalid:\n> diff --git a/src/cam/main.h b/src/cam/main.h\n> index 4a130d8dd2906ad4..6f95add31a6341cf 100644\n> --- a/src/cam/main.h\n> +++ b/src/cam/main.h\n> @@ -17,6 +17,7 @@ enum {\n>  \tOptListProperties = 'p',\n>  \tOptStream = 's',\n>  \tOptListControls = 256,\n> +\tOptStrictFormats = 257,\n>  };\n>  \n>  #endif /* __CAM_MAIN_H__ */\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 AF66FBD878\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 24 Jul 2020 13:57:33 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 2A355611B0;\n\tFri, 24 Jul 2020 15:57:33 +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 8981B60535\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 24 Jul 2020 15:57:31 +0200 (CEST)","from [192.168.0.20]\n\t(cpc89242-aztw30-2-0-cust488.18-1.cable.virginm.net [86.31.129.233])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id F1B8E538;\n\tFri, 24 Jul 2020 15:57:30 +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=\"RG1UMqEN\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1595599051;\n\tbh=CBmeIQ5APueApMvWutjx5E8PAYEgC4OKlpTosDsA0CY=;\n\th=Reply-To:Subject:To:References:From:Date:In-Reply-To:From;\n\tb=RG1UMqENcNOI4MHrUbFa+gEamEC5wgsUhL/i14roIHQw6XAomwdMxxKQU1lplup+G\n\t7mGHrwnVodf4diHZb9BySicoJenXyycdsG+bNpta1JrkubrzpKmrfV2qHxWdRSj+hL\n\tOjk47Fo8WJVZ3JjT7dnjCmjtfjrudOy3cfN52Bxg=","To":"=?utf-8?q?Niklas_S=C3=B6derlund?= <niklas.soderlund@ragnatech.se>,\n\tlibcamera-devel@lists.libcamera.org","References":"<20200724134320.637696-1-niklas.soderlund@ragnatech.se>\n\t<20200724134320.637696-2-niklas.soderlund@ragnatech.se>","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Autocrypt":"addr=kieran.bingham@ideasonboard.com; keydata=\n\t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\n\tWZw01QYHU/GUV/zHJSFk","Organization":"Ideas on Board","Message-ID":"<b2e773e6-5f0f-a5bd-2d38-6d3a166f6b72@ideasonboard.com>","Date":"Fri, 24 Jul 2020 14:57:28 +0100","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":"<20200724134320.637696-2-niklas.soderlund@ragnatech.se>","Content-Language":"en-GB","Subject":"Re: [libcamera-devel] [PATCH 1/3] cam: Add option to disallow\n\tadjusting of requested formats","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>"}},{"id":11578,"web_url":"https://patchwork.libcamera.org/comment/11578/","msgid":"<20200724172240.GA2729799@oden.dyn.berto.se>","date":"2020-07-24T17:22:40","subject":"Re: [libcamera-devel] [PATCH 1/3] cam: Add option to disallow\n\tadjusting of requested formats","submitter":{"id":5,"url":"https://patchwork.libcamera.org/api/people/5/","name":"Niklas Söderlund","email":"niklas.soderlund@ragnatech.se"},"content":"Hi Kieran,\n\nThanks for your feedback.\n\nOn 2020-07-24 14:57:28 +0100, Kieran Bingham wrote:\n> Hi Niklas,\n> \n> I can see some definite value in this option!\n> \n> On 24/07/2020 14:43, Niklas Söderlund wrote:\n> > Add an '--strict-formats' option which fails the camera configuration\n> \n> s/an/a/\n> \n> > step if the format is adjusted,\n> > \n> > Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n> > ---\n> >  src/cam/main.cpp | 17 ++++++++++++++++-\n> >  src/cam/main.h   |  1 +\n> >  2 files changed, 17 insertions(+), 1 deletion(-)\n> > \n> > diff --git a/src/cam/main.cpp b/src/cam/main.cpp\n> > index 2512fe9da782165b..a223563ad37e9fe5 100644\n> > --- a/src/cam/main.cpp\n> > +++ b/src/cam/main.cpp\n> > @@ -49,12 +49,15 @@ private:\n> >  \tstd::shared_ptr<Camera> camera_;\n> >  \tstd::unique_ptr<libcamera::CameraConfiguration> config_;\n> >  \tEventLoop *loop_;\n> > +\n> > +\tbool strictFormats_;\n> >  };\n> >  \n> >  CamApp *CamApp::app_ = nullptr;\n> >  \n> >  CamApp::CamApp()\n> > -\t: cm_(nullptr), camera_(nullptr), config_(nullptr), loop_(nullptr)\n> > +\t: cm_(nullptr), camera_(nullptr), config_(nullptr), loop_(nullptr),\n> > +\t  strictFormats_(false)\n> >  {\n> >  \tCamApp::app_ = this;\n> >  }\n> > @@ -77,6 +80,9 @@ int CamApp::init(int argc, char **argv)\n> >  \tif (ret < 0)\n> >  \t\treturn ret;\n> >  \n> > +\tif (options_.isSet(OptStrictFormats))\n> > +\t\tstrictFormats_ = true;\n> > +\n> >  \tcm_ = new CameraManager();\n> >  \n> >  \tret = cm_->start();\n> > @@ -179,6 +185,9 @@ int CamApp::parseOptions(int argc, char *argv[])\n> >  \t\t\t \"list-controls\");\n> >  \tparser.addOption(OptListProperties, OptionNone, \"List cameras properties\",\n> >  \t\t\t \"list-properties\");\n> > +\tparser.addOption(OptStrictFormats, OptionNone,\n> > +\t\t\t \"Do not allow requested stream format(s) to be adjusted\",\n> > +\t\t\t \"strict-formats\");\n> >  \n> >  \toptions_ = parser.parse(argc, argv);\n> >  \tif (!options_.valid())\n> > @@ -214,6 +223,12 @@ int CamApp::prepareConfig()\n> >  \tcase CameraConfiguration::Valid:\n> >  \t\tbreak;\n> >  \tcase CameraConfiguration::Adjusted:\n> > +\t\tif (strictFormats_) {\n> > +\t\t\tstd::cout << \"Adjustng camera configuration not allowed\"\n> \n> s/Adjustng/Adjusting/\n> \n> \n> Could/should we print here what the stream configurations were adjusted\n> /to/ to help debugging?\n\nWe could, but there are other places we could do this and don't. I think \nwe should add this to core at the Debug level so no matter the \napplication we could get this information out.\n\nI know you have added something like this in your HAL JPEG work so I \nthink we should address this at a common point.\n\n> \n> \n> Otherwise,\n> \n> > +\t\t\t\t  << std::endl;\n> > +\t\t\tconfig_.reset();\n> \n> Is this (reset) essential?\n\nYes, we need to reset the config_ variable if we don't want to proceed.  \nWe do the same here for CameraConfiguration::Invalid (that is not shown \nin the context for this patch).\n\n> \n> Otherwise,\n> \n> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\nThanks!\n\n> \n> \n> \n> > +\t\t\treturn -EINVAL;\n> > +\t\t}\n> >  \t\tstd::cout << \"Camera configuration adjusted\" << std::endl;\n> >  \t\tbreak;\n> >  \tcase CameraConfiguration::Invalid:\n> > diff --git a/src/cam/main.h b/src/cam/main.h\n> > index 4a130d8dd2906ad4..6f95add31a6341cf 100644\n> > --- a/src/cam/main.h\n> > +++ b/src/cam/main.h\n> > @@ -17,6 +17,7 @@ enum {\n> >  \tOptListProperties = 'p',\n> >  \tOptStream = 's',\n> >  \tOptListControls = 256,\n> > +\tOptStrictFormats = 257,\n> >  };\n> >  \n> >  #endif /* __CAM_MAIN_H__ */\n> > \n> \n> -- \n> Regards\n> --\n> Kieran","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 D7412BD86F\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 24 Jul 2020 17:22:44 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 6C2216039B;\n\tFri, 24 Jul 2020 19:22:44 +0200 (CEST)","from mail-lj1-x241.google.com (mail-lj1-x241.google.com\n\t[IPv6:2a00:1450:4864:20::241])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id BB3A66039B\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 24 Jul 2020 19:22:42 +0200 (CEST)","by mail-lj1-x241.google.com with SMTP id a27so1259771ljn.8\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 24 Jul 2020 10:22:42 -0700 (PDT)","from localhost (h-209-203.A463.priv.bahnhof.se. [155.4.209.203])\n\tby smtp.gmail.com with ESMTPSA id\n\tb26sm424086lji.36.2020.07.24.10.22.40\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tFri, 24 Jul 2020 10:22:40 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=ragnatech-se.20150623.gappssmtp.com\n\theader.i=@ragnatech-se.20150623.gappssmtp.com\n\theader.b=\"NguD/uDR\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=ragnatech-se.20150623.gappssmtp.com; s=20150623;\n\th=date:from:to:cc:subject:message-id:references:mime-version\n\t:content-disposition:content-transfer-encoding:in-reply-to;\n\tbh=MVhAbIfEWKBLsdcKPOPAj+mWDdkd03ub9mVwc9LEa8w=;\n\tb=NguD/uDR0PIYdTdSf1nQ+CbBwZIjAxTAHBznEi090IW6mNb6+PlDp3aBjRaoL/0ZMy\n\tEzjhmYLUkSnEGGrlSvjjaq5uwwYgGZourRwhaZRzeOyQpP8jeBnHJy0qfqlWftCL8giv\n\tobl3d9IU9W8ASDfHsPMVn5u9ZeYy/+bgPH6usfhlWiIvNxJqvT/lccPej3XwIdEHw2s5\n\tKrE+L3zDTlEFibvHb6XXIV3iKPiLG410xNWun0G7gSzINp+rHXJCkFIK7L3/ox2jI08I\n\tbdTQRgwlmrW1m09nnkmOgAnXJREtmyUO3XVv5+2YBNwWkL125y063hTi/8QSwylKJWdm\n\tJ/Qg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:date:from:to:cc:subject:message-id:references\n\t:mime-version:content-disposition:content-transfer-encoding\n\t:in-reply-to;\n\tbh=MVhAbIfEWKBLsdcKPOPAj+mWDdkd03ub9mVwc9LEa8w=;\n\tb=hT4BK+rwvrv5T8ENn+47nrxMUrrC8qRwr4UlKA5nKONr9cISuB9DbUI+vKWKWz3kBw\n\tnfPqutiB2/N1Lgk84/mNe6k+lZm/iVFEvsqJt8OkhtVsHah+jt4tdssC5K/Vj3duoZCS\n\tZf5Sg1FrCU9viTFv5aHG/nIQ57uEzTGiBmaJXJjeOZk84WX2AhABO4kY3Hf30apP4Hoy\n\tNuOixTIg5nUBWr5MrgfAeosWWZM4TUKkUlm9brTZwGhKGZ0ARx8x4AoyeyuxZUET64/S\n\tOLeGkGLTIP5oHDcikRSBy+xCDLzezW+YZ8dWWJU/GfxwpQmo7lwTgNDXebXiwHr/9bo2\n\t3QVg==","X-Gm-Message-State":"AOAM531xobIgBOi5DAREKIzNazef0vcbk5Ezdff3wM7qS7oUjMK56HHz\n\tpEa5Zv6IHjWQWh+yQAUMOng33fk/rWs=","X-Google-Smtp-Source":"ABdhPJza+OzouUymLbOgWbUp7aqskzaeNFwN1ml1z9pqy2XEHVDgKq1c/8KNAmaQWp0zLaaOjWzBPQ==","X-Received":"by 2002:a2e:780b:: with SMTP id\n\tt11mr4552378ljc.271.1595611361767; \n\tFri, 24 Jul 2020 10:22:41 -0700 (PDT)","Date":"Fri, 24 Jul 2020 19:22:40 +0200","From":"Niklas =?iso-8859-1?q?S=F6derlund?= <niklas.soderlund@ragnatech.se>","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Message-ID":"<20200724172240.GA2729799@oden.dyn.berto.se>","References":"<20200724134320.637696-1-niklas.soderlund@ragnatech.se>\n\t<20200724134320.637696-2-niklas.soderlund@ragnatech.se>\n\t<b2e773e6-5f0f-a5bd-2d38-6d3a166f6b72@ideasonboard.com>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<b2e773e6-5f0f-a5bd-2d38-6d3a166f6b72@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH 1/3] cam: Add option to disallow\n\tadjusting of requested formats","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=\"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>"}}]