#[repr(i32)]pub enum AnalogueGainMode {
Auto = 0,
Manual = 1,
}
Expand description
Controls the source of the analogue gain that is applied to the image sensor.
When set to Auto, the AEGC algorithm computes the analogue gain and configures the image sensor accordingly. When set to Manual, the value of the AnalogueGain control is used.
When transitioning from Auto to Manual mode and no AnalogueGain control is provided by the application, the last value computed by the AEGC algorithm when the mode was Auto will be used. If the AnalogueGainMode was never set to Auto (either because the camera started in Manual mode, or Auto is not supported by the camera), the camera should use a best-effort default value.
If AnalogueGainModeManual is supported, the AnalogueGain control must also be supported.
For cameras where we have control over the ISP, both ExposureTimeMode and AnalogueGainMode are expected to support manual mode, and both controls (as well as ExposureTimeMode and AnalogueGain) are expected to be present. If the camera also has an AEGC implementation, both ExposureTimeMode and AnalogueGainMode shall support both manual and auto mode. If auto mode is available, it shall be the default mode. These rules do not apply to black box cameras such as UVC cameras, where the available gain and exposure modes are completely dependent on what the hardware exposes.
The same procedure described for performing flickerless transitions in the ExposureTimeMode control documentation can be applied to analogue gain.
\sa ExposureTimeMode \sa AnalogueGain
Variants§
Auto = 0
The analogue gain will be calculated automatically and set by the AEGC algorithm.
If AnalogueGain is set while this mode is active, it will be ignored, and it will also not be retained.
When transitioning from Manual to Auto mode, the AEGC should start its adjustments based on the last set manual AnalogueGain value.
Manual = 1
The analogue gain will not be updated by the AEGC algorithm.
When transitioning from Auto to Manual mode, the last computed gain value is used until a new value is specified through the AnalogueGain control. If an AnalogueGain value is specified in the same request where the AnalogueGainMode is changed from Auto to Manual, the provided AnalogueGain is applied immediately.
Trait Implementations§
Source§impl Clone for AnalogueGainMode
impl Clone for AnalogueGainMode
Source§fn clone(&self) -> AnalogueGainMode
fn clone(&self) -> AnalogueGainMode
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more