summaryrefslogtreecommitdiff
path: root/src/ipa/raspberrypi/cam_helper.hpp
diff options
context:
space:
mode:
authorDavid Plowman <david.plowman@raspberrypi.com>2021-03-08 22:39:37 +0000
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-03-09 00:50:42 +0200
commit18691c538b9dad777bd61fe8400289298c78ac10 (patch)
treeefbcebf6733e1e82fef69e55db33e6dc6c240c2a /src/ipa/raspberrypi/cam_helper.hpp
parentf484857994075d0e4d33f8897cb3b47c7cf3fd6a (diff)
ipa: raspberrypi: Make CamHelpers return the frame delay for vblanking
For some sensors (e.g. imx477) we need to update the vblanking on the frame before the exposure. For this reason the GetDelays method must also return the number of frame delays for the vblanking control. Signed-off-by: David Plowman <david.plowman@raspberrypi.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'src/ipa/raspberrypi/cam_helper.hpp')
-rw-r--r--src/ipa/raspberrypi/cam_helper.hpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/ipa/raspberrypi/cam_helper.hpp b/src/ipa/raspberrypi/cam_helper.hpp
index 14d70112..1b2d6eec 100644
--- a/src/ipa/raspberrypi/cam_helper.hpp
+++ b/src/ipa/raspberrypi/cam_helper.hpp
@@ -28,10 +28,10 @@ namespace RPiController {
// exposure time, and to convert between the sensor's gain codes and actual
// gains.
//
-// A method to return the number of frames of delay between updating exposure
-// and analogue gain and the changes taking effect. For many sensors these
-// take the values 2 and 1 respectively, but sensors that are different will
-// need to over-ride the default method provided.
+// A method to return the number of frames of delay between updating exposure,
+// analogue gain and vblanking, and for the changes to take effect. For many
+// sensors these take the values 2, 1 and 2 respectively, but sensors that are
+// different will need to over-ride the default method provided.
//
// A method to query if the sensor outputs embedded data that can be parsed.
//
@@ -72,7 +72,8 @@ public:
double maxFrameDuration) const;
virtual uint32_t GainCode(double gain) const = 0;
virtual double Gain(uint32_t gain_code) const = 0;
- virtual void GetDelays(int &exposure_delay, int &gain_delay) const;
+ virtual void GetDelays(int &exposure_delay, int &gain_delay,
+ int &vblank_delay) const;
virtual bool SensorEmbeddedDataPresent() const;
virtual unsigned int HideFramesStartup() const;
virtual unsigned int HideFramesModeSwitch() const;