ipa: rpi: Disable StatsOutputEnable control by default
diff mbox series

Message ID 20240603094209.13921-1-naush@raspberrypi.com
State Accepted
Commit 98071d3109c131820439f61d9380c0bd4cd2119a
Headers show
Series
  • ipa: rpi: Disable StatsOutputEnable control by default
Related show

Commit Message

Naushir Patuck June 3, 2024, 9:42 a.m. UTC
Set the default value of controls::rpi::StatsOutputEnable to false,
disabling the functionality. This stops unnecessary copies of the
statistics output ending up in the Request metdata if not needed.

Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
---
 src/ipa/rpi/common/ipa_base.cpp | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

Comments

Kieran Bingham June 3, 2024, 9:49 a.m. UTC | #1
Quoting Naushir Patuck (2024-06-03 10:42:09)
> Set the default value of controls::rpi::StatsOutputEnable to false,
> disabling the functionality. This stops unnecessary copies of the
> statistics output ending up in the Request metdata if not needed.

Default false here is certainly reasonable.

Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>

> 
> Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
> ---
>  src/ipa/rpi/common/ipa_base.cpp | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/src/ipa/rpi/common/ipa_base.cpp b/src/ipa/rpi/common/ipa_base.cpp
> index 1d12262bda01..6fb90209aa0f 100644
> --- a/src/ipa/rpi/common/ipa_base.cpp
> +++ b/src/ipa/rpi/common/ipa_base.cpp
> @@ -73,7 +73,7 @@ const ControlInfoMap::Map ipaControls{
>         { &controls::ScalerCrop, ControlInfo(Rectangle{}, Rectangle(65535, 65535, 65535, 65535), Rectangle{}) },
>         { &controls::FrameDurationLimits, ControlInfo(INT64_C(33333), INT64_C(120000)) },
>         { &controls::draft::NoiseReductionMode, ControlInfo(controls::draft::NoiseReductionModeValues) },
> -       { &controls::rpi::StatsOutputEnable, ControlInfo(false, true) },
> +       { &controls::rpi::StatsOutputEnable, ControlInfo(false, true, false) },
>  };
>  
>  /* IPA controls handled conditionally, if the sensor is not mono */
> @@ -103,8 +103,9 @@ LOG_DEFINE_CATEGORY(IPARPI)
>  namespace ipa::RPi {
>  
>  IpaBase::IpaBase()
> -       : controller_(), frameLengths_(FrameLengthsQueueSize, 0s), stitchSwapBuffers_(false), frameCount_(0),
> -         mistrustCount_(0), lastRunTimestamp_(0), firstStart_(true), flickerState_({ 0, 0s })
> +       : controller_(), frameLengths_(FrameLengthsQueueSize, 0s), statsMetadataOutput_(false),
> +         stitchSwapBuffers_(false), frameCount_(0), mistrustCount_(0), lastRunTimestamp_(0),
> +         firstStart_(true), flickerState_({ 0, 0s })
>  {
>  }
>  
> -- 
> 2.34.1
>
David Plowman June 3, 2024, 11:23 a.m. UTC | #2
Hi Naush

Thanks for the fix!

On Mon, 3 Jun 2024 at 10:49, Kieran Bingham
<kieran.bingham@ideasonboard.com> wrote:
>
> Quoting Naushir Patuck (2024-06-03 10:42:09)
> > Set the default value of controls::rpi::StatsOutputEnable to false,
> > disabling the functionality. This stops unnecessary copies of the
> > statistics output ending up in the Request metdata if not needed.
>
> Default false here is certainly reasonable.
>
> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
>
> >
> > Signed-off-by: Naushir Patuck <naush@raspberrypi.com>

Reviewed-by: David Plowman <david.plowman@raspberrypi.com>

David

> > ---
> >  src/ipa/rpi/common/ipa_base.cpp | 7 ++++---
> >  1 file changed, 4 insertions(+), 3 deletions(-)
> >
> > diff --git a/src/ipa/rpi/common/ipa_base.cpp b/src/ipa/rpi/common/ipa_base.cpp
> > index 1d12262bda01..6fb90209aa0f 100644
> > --- a/src/ipa/rpi/common/ipa_base.cpp
> > +++ b/src/ipa/rpi/common/ipa_base.cpp
> > @@ -73,7 +73,7 @@ const ControlInfoMap::Map ipaControls{
> >         { &controls::ScalerCrop, ControlInfo(Rectangle{}, Rectangle(65535, 65535, 65535, 65535), Rectangle{}) },
> >         { &controls::FrameDurationLimits, ControlInfo(INT64_C(33333), INT64_C(120000)) },
> >         { &controls::draft::NoiseReductionMode, ControlInfo(controls::draft::NoiseReductionModeValues) },
> > -       { &controls::rpi::StatsOutputEnable, ControlInfo(false, true) },
> > +       { &controls::rpi::StatsOutputEnable, ControlInfo(false, true, false) },
> >  };
> >
> >  /* IPA controls handled conditionally, if the sensor is not mono */
> > @@ -103,8 +103,9 @@ LOG_DEFINE_CATEGORY(IPARPI)
> >  namespace ipa::RPi {
> >
> >  IpaBase::IpaBase()
> > -       : controller_(), frameLengths_(FrameLengthsQueueSize, 0s), stitchSwapBuffers_(false), frameCount_(0),
> > -         mistrustCount_(0), lastRunTimestamp_(0), firstStart_(true), flickerState_({ 0, 0s })
> > +       : controller_(), frameLengths_(FrameLengthsQueueSize, 0s), statsMetadataOutput_(false),
> > +         stitchSwapBuffers_(false), frameCount_(0), mistrustCount_(0), lastRunTimestamp_(0),
> > +         firstStart_(true), flickerState_({ 0, 0s })
> >  {
> >  }
> >
> > --
> > 2.34.1
> >

Patch
diff mbox series

diff --git a/src/ipa/rpi/common/ipa_base.cpp b/src/ipa/rpi/common/ipa_base.cpp
index 1d12262bda01..6fb90209aa0f 100644
--- a/src/ipa/rpi/common/ipa_base.cpp
+++ b/src/ipa/rpi/common/ipa_base.cpp
@@ -73,7 +73,7 @@  const ControlInfoMap::Map ipaControls{
 	{ &controls::ScalerCrop, ControlInfo(Rectangle{}, Rectangle(65535, 65535, 65535, 65535), Rectangle{}) },
 	{ &controls::FrameDurationLimits, ControlInfo(INT64_C(33333), INT64_C(120000)) },
 	{ &controls::draft::NoiseReductionMode, ControlInfo(controls::draft::NoiseReductionModeValues) },
-	{ &controls::rpi::StatsOutputEnable, ControlInfo(false, true) },
+	{ &controls::rpi::StatsOutputEnable, ControlInfo(false, true, false) },
 };
 
 /* IPA controls handled conditionally, if the sensor is not mono */
@@ -103,8 +103,9 @@  LOG_DEFINE_CATEGORY(IPARPI)
 namespace ipa::RPi {
 
 IpaBase::IpaBase()
-	: controller_(), frameLengths_(FrameLengthsQueueSize, 0s), stitchSwapBuffers_(false), frameCount_(0),
-	  mistrustCount_(0), lastRunTimestamp_(0), firstStart_(true), flickerState_({ 0, 0s })
+	: controller_(), frameLengths_(FrameLengthsQueueSize, 0s), statsMetadataOutput_(false),
+	  stitchSwapBuffers_(false), frameCount_(0), mistrustCount_(0), lastRunTimestamp_(0),
+	  firstStart_(true), flickerState_({ 0, 0s })
 {
 }