25 AE_CONSTRAINT_MODE = 4,
31 AE_FLICKER_PERIOD = 10,
32 AE_FLICKER_DETECTED = 11,
40 COLOUR_TEMPERATURE = 19,
42 SENSOR_BLACK_LEVELS = 21,
45 COLOUR_CORRECTION_MATRIX = 24,
49 FRAME_DURATION_LIMITS = 28,
50 SENSOR_TEMPERATURE = 29,
51 SENSOR_TIMESTAMP = 30,
139extern const std::array<const ControlValue, 3>
AfModeValues;
213#define LIBCAMERA_HAS_DRAFT_VENDOR_CONTROLS
216 AE_PRECAPTURE_TRIGGER = 10001,
217 NOISE_REDUCTION_MODE = 10002,
218 COLOR_CORRECTION_ABERRATION_MODE = 10003,
221 SENSOR_ROLLING_SHUTTER_SKEW = 10006,
222 LENS_SHADING_MAP_MODE = 10007,
223 PIPELINE_DEPTH = 10008,
225 TEST_PATTERN_MODE = 10010,
Describe a control and its intrinsic properties.
Definition: controls.h:255
Framework to manage controls related to an object.
const Control< int32_t > LensShadingMapMode
Control to report if the lens shading map is available. Currently identical to ANDROID_STATISTICS_LEN...
const Control< int32_t > PipelineDepth
Specifies the number of pipeline stages the frame went through from when it was exposed to when the f...
AeStateEnum
Supported AeState values.
Definition: control_ids.h:251
@ AeStateConverged
The AE algorithm has converged.
Definition: control_ids.h:254
@ AeStateLocked
The AE algorithm is locked.
Definition: control_ids.h:255
@ AeStateInactive
The AE algorithm is inactive.
Definition: control_ids.h:252
@ AeStatePrecapture
The AE algorithm has started a pre-capture metering session.
Definition: control_ids.h:257
@ AeStateSearching
The AE algorithm has not converged yet.
Definition: control_ids.h:253
@ AeStateFlashRequired
The AE algorithm would need a flash for good results.
Definition: control_ids.h:256
NoiseReductionModeEnum
Supported NoiseReductionMode values.
Definition: control_ids.h:235
@ NoiseReductionModeHighQuality
High quality noise reduction at the expense of frame rate.
Definition: control_ids.h:238
@ NoiseReductionModeMinimal
Minimal noise reduction is applied without reducing the frame rate.
Definition: control_ids.h:239
@ NoiseReductionModeOff
No noise reduction is applied.
Definition: control_ids.h:236
@ NoiseReductionModeZSL
Noise reduction is applied at different levels to different streams.
Definition: control_ids.h:240
@ NoiseReductionModeFast
Noise reduction is applied without reducing the frame rate.
Definition: control_ids.h:237
AwbStateEnum
Supported AwbState values.
Definition: control_ids.h:261
@ AwbLocked
The AWB algorithm is locked.
Definition: control_ids.h:265
@ AwbStateInactive
The AWB algorithm is inactive.
Definition: control_ids.h:262
@ AwbConverged
The AWB algorithm has converged.
Definition: control_ids.h:264
@ AwbStateSearching
The AWB algorithm has not converged yet.
Definition: control_ids.h:263
const Control< int32_t > AeState
Control to report the current AE algorithm state. Currently identical to ANDROID_CONTROL_AE_STATE.
const Control< int32_t > AwbState
Control to report the current AWB algorithm state. Currently identical to ANDROID_CONTROL_AWB_STATE.
const std::array< const ControlValue, 6 > AeStateValues
List of all AeState supported values.
const std::array< const ControlValue, 5 > NoiseReductionModeValues
List of all NoiseReductionMode supported values.
const Control< int32_t > NoiseReductionMode
Control to select the noise reduction algorithm mode. Currently identical to ANDROID_NOISE_REDUCTION_...
const std::array< const ControlValue, 3 > AePrecaptureTriggerValues
List of all AePrecaptureTrigger supported values.
const Control< int32_t > TestPatternMode
Control to select the test pattern mode. Currently identical to ANDROID_SENSOR_TEST_PATTERN_MODE.
const Control< int32_t > AePrecaptureTrigger
Control for AE metering trigger. Currently identical to ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER.
LensShadingMapModeEnum
Supported LensShadingMapMode values.
Definition: control_ids.h:270
@ LensShadingMapModeOn
The lens shading map mode is available.
Definition: control_ids.h:272
@ LensShadingMapModeOff
No lens shading map mode is available.
Definition: control_ids.h:271
const Control< int32_t > ColorCorrectionAberrationMode
Control to select the color correction aberration mode. Currently identical to ANDROID_COLOR_CORRECTI...
const std::array< const ControlValue, 4 > AwbStateValues
List of all AwbState supported values.
TestPatternModeEnum
Supported TestPatternMode values.
Definition: control_ids.h:278
@ TestPatternModeColorBarsFadeToGray
The test pattern is similar to TestPatternModeColorBars, except that each bar should start at its spe...
Definition: control_ids.h:282
@ TestPatternModeCustom1
The first custom test pattern. All custom patterns that are available only on this camera device are ...
Definition: control_ids.h:284
@ TestPatternModePn9
All pixel data is replaced by a pseudo-random sequence generated from a PN9 512-bit sequence (typical...
Definition: control_ids.h:283
@ TestPatternModeOff
No test pattern mode is used. The camera device returns frames from the image sensor.
Definition: control_ids.h:279
@ TestPatternModeSolidColor
Each pixel in [R, G_even, G_odd, B] is replaced by its respective color channel provided in test patt...
Definition: control_ids.h:280
@ TestPatternModeColorBars
All pixel data is replaced with an 8-bar color pattern. The vertical bars (left-to-right) are as foll...
Definition: control_ids.h:281
const std::array< const ControlValue, 2 > LensShadingMapModeValues
List of all LensShadingMapMode supported values.
const Control< int32_t > MaxLatency
The maximum number of frames that can occur after a request (different than the previous) has been su...
const std::array< const ControlValue, 6 > TestPatternModeValues
List of all TestPatternMode supported values.
ColorCorrectionAberrationModeEnum
Supported ColorCorrectionAberrationMode values.
Definition: control_ids.h:244
@ ColorCorrectionAberrationHighQuality
High quality aberration correction which might reduce the frame rate.
Definition: control_ids.h:247
@ ColorCorrectionAberrationOff
No aberration correction is applied.
Definition: control_ids.h:245
@ ColorCorrectionAberrationFast
Aberration correction will not slow down the frame rate.
Definition: control_ids.h:246
const Control< int64_t > SensorRollingShutterSkew
Control to report the time between the start of exposure of the first row and the start of exposure o...
const std::array< const ControlValue, 3 > ColorCorrectionAberrationModeValues
List of all ColorCorrectionAberrationMode supported values.
AePrecaptureTriggerEnum
Supported AePrecaptureTrigger values.
Definition: control_ids.h:228
@ AePrecaptureTriggerStart
The pre-capture AE metering is started by the camera.
Definition: control_ids.h:230
@ AePrecaptureTriggerIdle
The trigger is idle.
Definition: control_ids.h:229
@ AePrecaptureTriggerCancel
The camera will cancel any active or completed metering sequence. The AE algorithm is reset to its in...
Definition: control_ids.h:231
const Control< int64_t > SensorTimestamp
The time when the first row of the image sensor active array is exposed.
const Control< float > Brightness
Specify a fixed brightness parameter. Positive values (up to 1.0) produce brighter images; negative v...
const std::array< const ControlValue, 2 > AfSpeedValues
List of all AfSpeed supported values.
const std::array< const ControlValue, 4 > AeConstraintModeValues
List of all AeConstraintMode supported values.
const Control< int32_t > AeExposureMode
Specify an exposure mode for the AE algorithm to use. These specify how the desired total exposure is...
const Control< int32_t > AfSpeed
Control that determines whether the AF algorithm is to move the lens as quickly as possible or more s...
const Control< int32_t > AwbMode
Specify the range of illuminants to use for the AWB algorithm. The modes supported are platform speci...
const std::array< const ControlValue, 3 > AfModeValues
List of all AfMode supported values.
const Control< Span< const int32_t, 4 > > SensorBlackLevels
Reports the sensor black levels used for processing a frame, in the order R, Gr, Gb,...
AfModeEnum
Supported AfMode values.
Definition: control_ids.h:134
@ AfModeManual
The AF algorithm is in manual mode. In this mode it will never perform any action nor move the lens o...
Definition: control_ids.h:135
@ AfModeContinuous
The AF algorithm is in continuous mode. This means that the lens can re-start a scan spontaneously at...
Definition: control_ids.h:137
@ AfModeAuto
The AF algorithm is in auto mode. This means that the algorithm will never move the lens or change st...
Definition: control_ids.h:136
const std::array< const ControlValue, 4 > AfStateValues
List of all AfState supported values.
const Control< int64_t > FrameDuration
The instantaneous frame duration from start of frame exposure to start of next exposure,...
AfPauseEnum
Supported AfPause values.
Definition: control_ids.h:167
@ AfPauseDeferred
This is similar to AfPauseImmediate, and if the AfState is currently reporting AfStateFocused or AfSt...
Definition: control_ids.h:169
@ AfPauseResume
Resume continuous autofocus operation. The algorithm starts again from exactly where it left off,...
Definition: control_ids.h:170
@ AfPauseImmediate
Pause the continuous autofocus algorithm immediately, whether or not any kind of scan is underway....
Definition: control_ids.h:168
const Control< bool > AwbEnable
Enable or disable the AWB.
const Control< int32_t > AfRange
Control to set the range of focus distances that is scanned. An implementation may choose not to impl...
const Control< int32_t > FocusFoM
Reports a Figure of Merit (FoM) to indicate how in-focus the frame is. A larger FocusFoM value indica...
const std::array< const ControlValue, 2 > AfMeteringValues
List of all AfMetering supported values.
const Control< int32_t > AfPause
This control has no effect except when in continuous autofocus mode (AfModeContinuous)....
const Control< int32_t > AfMode
Control to set the mode of the AF (autofocus) algorithm.
const std::array< const ControlValue, 3 > AfPauseValues
List of all AfPause supported values.
const Control< int32_t > ExposureTime
Exposure time (shutter speed) for the frame applied in the sensor device. This value is specified in ...
AfTriggerEnum
Supported AfTrigger values.
Definition: control_ids.h:161
@ AfTriggerStart
Start an AF scan. Ignored if a scan is in progress.
Definition: control_ids.h:162
@ AfTriggerCancel
Cancel an AF scan. This does not cause the lens to move anywhere else. Ignored if no scan is in progr...
Definition: control_ids.h:163
const Control< bool > AeLocked
Report the lock status of a running AE algorithm.
const Control< Span< const int64_t, 2 > > FrameDurationLimits
The minimum and maximum (in that order) frame duration, expressed in microseconds.
const std::array< const ControlValue, 4 > AeMeteringModeValues
List of all AeMeteringMode supported values.
const std::array< const ControlValue, 4 > HdrChannelValues
List of all HdrChannel supported values.
const std::array< const ControlValue, 4 > AeExposureModeValues
List of all AeExposureMode supported values.
const Control< int32_t > AeFlickerDetected
Flicker period detected in microseconds. The value reported here indicates the currently detected fli...
AfStateEnum
Supported AfState values.
Definition: control_ids.h:175
@ AfStateIdle
The AF algorithm is in manual mode (AfModeManual) or in auto mode (AfModeAuto) and a scan has not yet...
Definition: control_ids.h:176
@ AfStateScanning
The AF algorithm is in auto mode (AfModeAuto), and a scan has been started using the AfTrigger contro...
Definition: control_ids.h:177
@ AfStateFailed
The AF algorithm is in auto (AfModeAuto) or continuous (AfModeContinuous) mode and a scan has complet...
Definition: control_ids.h:179
@ AfStateFocused
The AF algorithm is in auto (AfModeAuto) or continuous (AfModeContinuous) mode and a scan has complet...
Definition: control_ids.h:178
const Control< int32_t > HdrMode
Control to set the mode to be used for High Dynamic Range (HDR) imaging. HDR techniques typically inc...
HdrModeEnum
Supported HdrMode values.
Definition: control_ids.h:190
@ HdrModeNight
Multiple frames will be combined to produce "night mode" images. It is up to the implementation exact...
Definition: control_ids.h:195
@ HdrModeOff
HDR is disabled. Metadata for this frame will not include the HdrChannel control.
Definition: control_ids.h:191
@ HdrModeMultiExposure
Multiple exposures will be generated and merged to create HDR images. Each image will be tagged with ...
Definition: control_ids.h:193
@ HdrModeMultiExposureUnmerged
Multiple exposures will be generated in an alternating fashion. However, they will not be merged toge...
Definition: control_ids.h:192
@ HdrModeSingleExposure
Multiple frames all at a single exposure will be used to create HDR images. These images should be re...
Definition: control_ids.h:194
const Control< int32_t > AfPauseState
Only applicable in continuous (AfModeContinuous) mode, this reports whether the algorithm is currentl...
const Control< float > Contrast
Specify a fixed contrast parameter. Normal contrast is given by the value 1.0; larger values produce ...
const Control< float > ExposureValue
Specify an Exposure Value (EV) parameter. The EV parameter will only be applied if the AE algorithm i...
const Control< bool > AeEnable
Enable or disable the AE.
const std::array< const ControlValue, 2 > AfTriggerValues
List of all AfTrigger supported values.
AwbModeEnum
Supported AwbMode values.
Definition: control_ids.h:108
@ AwbDaylight
Daylight AWB lighting mode.
Definition: control_ids.h:114
@ AwbTungsten
Tungsten AWB lamp mode.
Definition: control_ids.h:111
@ AwbAuto
Search over the whole colour temperature range.
Definition: control_ids.h:109
@ AwbCustom
Custom AWB mode.
Definition: control_ids.h:116
@ AwbIndoor
Indoor AWB lighting mode.
Definition: control_ids.h:113
@ AwbFluorescent
Fluorescent AWB lamp mode.
Definition: control_ids.h:112
@ AwbIncandescent
Incandescent AWB lamp mode.
Definition: control_ids.h:110
@ AwbCloudy
Cloudy AWB lighting mode.
Definition: control_ids.h:115
const Control< float > DigitalGain
Digital gain value applied during the processing steps applied to the image as captured from the sens...
const Control< Rectangle > ScalerCrop
Sets the image portion that will be scaled to form the whole of the final output image....
const Control< int32_t > ColourTemperature
Report the current estimate of the colour temperature, in kelvin, for this frame. The ColourTemperatu...
const ControlIdMap controls
List of all supported libcamera controls.
Definition: controls_ids.cpp:1400
const Control< float > SensorTemperature
Temperature measure from the camera sensor in Celsius. This is typically obtained by a thermal sensor...
const Control< float > Saturation
Specify a fixed saturation parameter. Normal saturation is given by the value 1.0; larger values prod...
const Control< float > Lux
Report an estimate of the current illuminance level in lux. The Lux control can only be returned in m...
const Control< int32_t > AeMeteringMode
Specify a metering mode for the AE algorithm to use. The metering modes determine which parts of the ...
AfRangeEnum
Supported AfRange values.
Definition: control_ids.h:141
@ AfRangeNormal
A wide range of focus distances is scanned, all the way from infinity down to close distances,...
Definition: control_ids.h:142
@ AfRangeMacro
Only close distances are scanned.
Definition: control_ids.h:143
@ AfRangeFull
The full range of focus distances is scanned just as with AfRangeNormal but this time including the v...
Definition: control_ids.h:144
const Control< int32_t > HdrChannel
This value is reported back to the application so that it can discover whether this capture correspon...
const std::array< const ControlValue, 3 > AfRangeValues
List of all AfRange supported values.
const std::array< const ControlValue, 5 > HdrModeValues
List of all HdrMode supported values.
const std::array< const ControlValue, 8 > AwbModeValues
List of all AwbMode supported values.
AeMeteringModeEnum
Supported AeMeteringMode values.
Definition: control_ids.h:68
@ MeteringCentreWeighted
Centre-weighted metering mode.
Definition: control_ids.h:69
@ MeteringMatrix
Matrix metering mode.
Definition: control_ids.h:71
@ MeteringCustom
Custom metering mode.
Definition: control_ids.h:72
@ MeteringSpot
Spot metering mode.
Definition: control_ids.h:70
AeExposureModeEnum
Supported AeExposureMode values.
Definition: control_ids.h:84
@ ExposureLong
Exposure mode allowing long exposure times.
Definition: control_ids.h:87
@ ExposureNormal
Default exposure mode.
Definition: control_ids.h:85
@ ExposureShort
Exposure mode allowing only short exposure times.
Definition: control_ids.h:86
@ ExposureCustom
Custom exposure mode.
Definition: control_ids.h:88
const std::array< const ControlValue, 3 > AfPauseStateValues
List of all AfPauseState supported values.
const Control< float > AnalogueGain
Analogue gain value applied in the sensor device. The value of the control specifies the gain multipl...
AfMeteringEnum
Supported AfMetering values.
Definition: control_ids.h:154
@ AfMeteringAuto
The AF algorithm should decide for itself where it will measure focus.
Definition: control_ids.h:155
@ AfMeteringWindows
The AF algorithm should use the rectangles defined by the AfWindows control to measure focus....
Definition: control_ids.h:156
const std::array< const ControlValue, 3 > AeFlickerModeValues
List of all AeFlickerMode supported values.
AfSpeedEnum
Supported AfSpeed values.
Definition: control_ids.h:148
@ AfSpeedNormal
Move the lens at its usual speed.
Definition: control_ids.h:149
@ AfSpeedFast
Move the lens more quickly.
Definition: control_ids.h:150
AeConstraintModeEnum
Supported AeConstraintMode values.
Definition: control_ids.h:76
@ ConstraintHighlight
Highlight constraint mode. This mode adjusts the exposure levels in order to try and avoid over-expos...
Definition: control_ids.h:78
@ ConstraintCustom
Custom constraint mode.
Definition: control_ids.h:80
@ ConstraintShadows
Shadows constraint mode. This mode adjusts the exposure levels in order to try and avoid under-exposi...
Definition: control_ids.h:79
@ ConstraintNormal
Default constraint mode. This mode aims to balance the exposure of different parts of the image so as...
Definition: control_ids.h:77
const Control< Span< const float, 2 > > ColourGains
Pair of gain values for the Red and Blue colour channels, in that order. ColourGains can only be appl...
const Control< float > LensPosition
Acts as a control to instruct the lens to move to a particular position and also reports back the pos...
const Control< int32_t > AfTrigger
This control starts an autofocus scan when AfMode is set to AfModeAuto, and can also be used to termi...
HdrChannelEnum
Supported HdrChannel values.
Definition: control_ids.h:199
@ HdrChannelMedium
This is a medium exposure image.
Definition: control_ids.h:202
@ HdrChannelShort
This is a short exposure image.
Definition: control_ids.h:201
@ HdrChannelNone
This image does not correspond to any of the captures used to create an HDR image.
Definition: control_ids.h:200
@ HdrChannelLong
This is a long exposure image.
Definition: control_ids.h:203
const Control< int32_t > AfMetering
Instruct the AF algorithm how it should decide which parts of the image should be used to measure foc...
const Control< Span< const float, 9 > > ColourCorrectionMatrix
The 3x3 matrix that converts camera RGB to sRGB within the imaging pipeline. This should describe the...
const Control< float > Sharpness
A value of 0.0 means no sharpening. The minimum value means minimal sharpening, and shall be 0....
AfPauseStateEnum
Supported AfPauseState values.
Definition: control_ids.h:183
@ AfPauseStatePausing
Continuous AF has been sent an AfPauseDeferred control, and will pause as soon as any in-progress sca...
Definition: control_ids.h:185
@ AfPauseStateRunning
Continuous AF is running and the algorithm may restart a scan spontaneously.
Definition: control_ids.h:184
@ AfPauseStatePaused
Continuous AF is paused. No further state changes or lens movements will occur until the AfPauseResum...
Definition: control_ids.h:186
const Control< Span< const Rectangle > > AfWindows
Sets the focus windows used by the AF algorithm when AfMetering is set to AfMeteringWindows....
const Control< bool > AwbLocked
Report the lock status of a running AWB algorithm.
AeFlickerModeEnum
Supported AeFlickerMode values.
Definition: control_ids.h:95
@ FlickerAuto
Automatic flicker period detection and avoidance. The system will automatically determine the most li...
Definition: control_ids.h:98
@ FlickerOff
No flicker avoidance is performed.
Definition: control_ids.h:96
@ FlickerManual
Manual flicker avoidance. Suppress flicker effects caused by lighting running with a period specified...
Definition: control_ids.h:97
const Control< int32_t > AeFlickerPeriod
Manual flicker period in microseconds. This value sets the current flicker period to avoid....
const Control< int32_t > AeFlickerMode
Set the flicker mode, which determines whether, and how, the AGC/AEC algorithm attempts to hide flick...
const Control< int32_t > AfState
Reports the current state of the AF algorithm in conjunction with the reported AfMode value and (in c...
const Control< int32_t > AeConstraintMode
Specify a constraint mode for the AE algorithm to use. These determine how the measured scene brightn...
Top-level libcamera namespace.
Definition: backtrace.h:17
std::unordered_map< unsigned int, const ControlId * > ControlIdMap
A map of numerical control ID to ControlId.
Definition: controls.h:303