summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNaushir Patuck <naush@raspberrypi.com>2022-11-30 11:37:27 +0000
committerKieran Bingham <kieran.bingham@ideasonboard.com>2022-11-30 12:41:46 +0000
commit6b03da662b8b0f919e7df230cd78ba007aafc096 (patch)
tree95520abbcfbf265ebc4a77e09f3c833460369271
parentac42f9278e9bd2c9e60f87322bf431a7c8a6c2c9 (diff)
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 <naush@raspberrypi.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: David Plowman <david.plowman@raspberrypi.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
-rw-r--r--src/ipa/raspberrypi/raspberrypi.cpp2
1 files changed, 1 insertions, 1 deletions
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;