[libcamera-devel] [PATCH v2 1/3] ipa: raspberrypi: Store dropped frame count in a member variable

David Plowman david.plowman at raspberrypi.com
Fri Apr 16 15:06:32 CEST 2021


Hi Naush

Thanks for this patch.

On Fri, 16 Apr 2021 at 11:31, Naushir Patuck <naush at raspberrypi.com> wrote:
>
> Store the number of dropped frames on startup in a member variable. This
> will be used in a subsequent change for rate limiting the controller
> algorithms.
>
> Signed-off-by: Naushir Patuck <naush at raspberrypi.com>

Yes, it all looks fine to me:

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

Thanks!
David

> ---
>  src/ipa/raspberrypi/raspberrypi.cpp | 14 ++++++++------
>  1 file changed, 8 insertions(+), 6 deletions(-)
>
> diff --git a/src/ipa/raspberrypi/raspberrypi.cpp b/src/ipa/raspberrypi/raspberrypi.cpp
> index b0f61d351e3a..f6d1ab16a290 100644
> --- a/src/ipa/raspberrypi/raspberrypi.cpp
> +++ b/src/ipa/raspberrypi/raspberrypi.cpp
> @@ -143,6 +143,9 @@ private:
>         /* How many frames we should avoid running control algos on. */
>         unsigned int mistrustCount_;
>
> +       /* Number of frames that need to be dropped on startup. */
> +       unsigned int dropFrameCount_;
> +
>         /* LS table allocation passed in from the pipeline handler. */
>         FileDescriptor lsTableHandle_;
>         void *lsTable_;
> @@ -220,9 +223,8 @@ void IPARPi::start(const ControlList &controls, ipa::RPi::StartConfig *startConf
>          */
>         frameCount_ = 0;
>         checkCount_ = 0;
> -       unsigned int dropFrame = 0;
>         if (firstStart_) {
> -               dropFrame = helper_->HideFramesStartup();
> +               dropFrameCount_ = helper_->HideFramesStartup();
>                 mistrustCount_ = helper_->MistrustFramesStartup();
>
>                 /*
> @@ -250,14 +252,14 @@ void IPARPi::start(const ControlList &controls, ipa::RPi::StartConfig *startConf
>                                 awbConvergenceFrames += mistrustCount_;
>                 }
>
> -               dropFrame = std::max({ dropFrame, agcConvergenceFrames, awbConvergenceFrames });
> -               LOG(IPARPI, Debug) << "Drop " << dropFrame << " frames on startup";
> +               dropFrameCount_ = std::max({ dropFrameCount_, agcConvergenceFrames, awbConvergenceFrames });
> +               LOG(IPARPI, Debug) << "Drop " << dropFrameCount_ << " frames on startup";
>         } else {
> -               dropFrame = helper_->HideFramesModeSwitch();
> +               dropFrameCount_ = helper_->HideFramesModeSwitch();
>                 mistrustCount_ = helper_->MistrustFramesModeSwitch();
>         }
>
> -       startConfig->dropFrameCount = dropFrame;
> +       startConfig->dropFrameCount = dropFrameCount_;
>
>         firstStart_ = false;
>  }
> --
> 2.25.1
>


More information about the libcamera-devel mailing list