From 6b03da662b8b0f919e7df230cd78ba007aafc096 Mon Sep 17 00:00:00 2001 From: Naushir Patuck Date: Wed, 30 Nov 2022 11:37:27 +0000 Subject: ipa: raspberrypi: Fix bug in IPA frame drop logic Fix a bug in the IPA frame dropping (for rate control) logic, where the metadata for the current context was copied from itself (i.e. a no-op), instead of being copied from the previous context. This bug does not occur in normal conditions, only when running with a low exposure time and unconstrained framerate, which happens in a particular picamera2 test. Fixes: 546154b13433 ("pipeline: ipa: raspberrypi: Use IPA cookies") Signed-off-by: Naushir Patuck Reviewed-by: Kieran Bingham Reviewed-by: David Plowman Signed-off-by: Kieran Bingham --- src/ipa/raspberrypi/raspberrypi.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ipa/raspberrypi/raspberrypi.cpp b/src/ipa/raspberrypi/raspberrypi.cpp index 0f914f84..bead436d 100644 --- a/src/ipa/raspberrypi/raspberrypi.cpp +++ b/src/ipa/raspberrypi/raspberrypi.cpp @@ -1062,7 +1062,7 @@ void IPARPi::prepareISP(const ISPConfig &data) * in helper_->Prepare(). */ RPiController::Metadata &lastMetadata = - rpiMetadata_[ipaContext ? ipaContext : rpiMetadata_.size()]; + rpiMetadata_[(ipaContext ? ipaContext : rpiMetadata_.size()) - 1]; rpiMetadata.mergeCopy(lastMetadata); processPending_ = false; return; -- cgit v1.2.1