libcamera: controls: Populate direction field in control definitions

In preparation for adding support for querying direction information
from controls, populate the corresponding field in the control ID
defintions.

Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Stefan Klug <stefan.klug@ideasonboard.com>
This commit is contained in:
Paul Elder 2024-11-26 00:11:50 +09:00
parent ef7c767a0f
commit 9bd9d25a82
3 changed files with 62 additions and 0 deletions

View file

@ -10,6 +10,7 @@ vendor: libcamera
controls:
- AeEnable:
type: bool
direction: inout
description: |
Enable or disable the AE.
@ -17,6 +18,7 @@ controls:
- AeLocked:
type: bool
direction: out
description: |
Report the lock status of a running AE algorithm.
@ -31,6 +33,7 @@ controls:
# - Better handling of custom types.
- AeMeteringMode:
type: int32_t
direction: inout
description: |
Specify a metering mode for the AE algorithm to use.
@ -56,6 +59,7 @@ controls:
# - Better handling of custom types.
- AeConstraintMode:
type: int32_t
direction: inout
description: |
Specify a constraint mode for the AE algorithm to use.
@ -98,6 +102,7 @@ controls:
# - Better handling of custom types.
- AeExposureMode:
type: int32_t
direction: inout
description: |
Specify an exposure mode for the AE algorithm to use.
@ -120,6 +125,7 @@ controls:
- ExposureValue:
type: float
direction: inout
description: |
Specify an Exposure Value (EV) parameter.
@ -134,6 +140,7 @@ controls:
- ExposureTime:
type: int32_t
direction: inout
description: |
Exposure time for the frame applied in the sensor device.
@ -153,6 +160,7 @@ controls:
- AnalogueGain:
type: float
direction: inout
description: |
Analogue gain value applied in the sensor device.
@ -173,6 +181,7 @@ controls:
- AeFlickerMode:
type: int32_t
direction: inout
description: |
Set the flicker avoidance mode for AGC/AEC.
@ -215,6 +224,7 @@ controls:
- AeFlickerPeriod:
type: int32_t
direction: inout
description: |
Manual flicker period in microseconds.
@ -235,6 +245,7 @@ controls:
- AeFlickerDetected:
type: int32_t
direction: out
description: |
Flicker period detected in microseconds.
@ -257,6 +268,7 @@ controls:
- Brightness:
type: float
direction: inout
description: |
Specify a fixed brightness parameter.
@ -265,6 +277,7 @@ controls:
- Contrast:
type: float
direction: inout
description: |
Specify a fixed contrast parameter.
@ -273,6 +286,7 @@ controls:
- Lux:
type: float
direction: out
description: |
Report an estimate of the current illuminance level in lux.
@ -280,6 +294,7 @@ controls:
- AwbEnable:
type: bool
direction: inout
description: |
Enable or disable the AWB.
@ -290,6 +305,7 @@ controls:
# - Better handling of custom types.
- AwbMode:
type: int32_t
direction: inout
description: |
Specify the range of illuminants to use for the AWB algorithm.
@ -323,6 +339,7 @@ controls:
- AwbLocked:
type: bool
direction: out
description: |
Report the lock status of a running AWB algorithm.
@ -334,6 +351,7 @@ controls:
- ColourGains:
type: float
direction: inout
description: |
Pair of gain values for the Red and Blue colour channels, in that
order.
@ -345,6 +363,7 @@ controls:
- ColourTemperature:
type: int32_t
direction: out
description: |
Report the estimate of the colour temperature for the frame, in kelvin.
@ -352,6 +371,7 @@ controls:
- Saturation:
type: float
direction: inout
description: |
Specify a fixed saturation parameter.
@ -360,6 +380,7 @@ controls:
- SensorBlackLevels:
type: int32_t
direction: out
description: |
Reports the sensor black levels used for processing a frame.
@ -370,6 +391,7 @@ controls:
- Sharpness:
type: float
direction: inout
description: |
Intensity of the sharpening applied to the image.
@ -384,6 +406,7 @@ controls:
- FocusFoM:
type: int32_t
direction: out
description: |
Reports a Figure of Merit (FoM) to indicate how in-focus the frame is.
@ -396,6 +419,7 @@ controls:
- ColourCorrectionMatrix:
type: float
direction: inout
description: |
The 3x3 matrix that converts camera RGB to sRGB within the imaging
pipeline.
@ -409,6 +433,7 @@ controls:
- ScalerCrop:
type: Rectangle
direction: inout
description: |
Sets the image portion that will be scaled to form the whole of
the final output image.
@ -424,6 +449,7 @@ controls:
- DigitalGain:
type: float
direction: inout
description: |
Digital gain value applied during the processing steps applied
to the image as captured from the sensor.
@ -441,6 +467,7 @@ controls:
- FrameDuration:
type: int64_t
direction: out
description: |
The instantaneous frame duration from start of frame exposure to start
of next exposure, expressed in microseconds.
@ -449,6 +476,7 @@ controls:
- FrameDurationLimits:
type: int64_t
direction: inout
description: |
The minimum and maximum (in that order) frame duration, expressed in
microseconds.
@ -485,6 +513,7 @@ controls:
- SensorTemperature:
type: float
direction: out
description: |
Temperature measure from the camera sensor in Celsius.
@ -497,6 +526,7 @@ controls:
- SensorTimestamp:
type: int64_t
direction: out
description: |
The time when the first row of the image sensor active array is exposed.
@ -511,6 +541,7 @@ controls:
- AfMode:
type: int32_t
direction: inout
description: |
The mode of the AF (autofocus) algorithm.
@ -575,6 +606,7 @@ controls:
- AfRange:
type: int32_t
direction: inout
description: |
The range of focus distances that is scanned.
@ -602,6 +634,7 @@ controls:
- AfSpeed:
type: int32_t
direction: inout
description: |
Determine whether the AF is to move the lens as quickly as possible or
more steadily.
@ -620,6 +653,7 @@ controls:
- AfMetering:
type: int32_t
direction: inout
description: |
The parts of the image used by the AF algorithm to measure focus.
enum:
@ -636,6 +670,7 @@ controls:
- AfWindows:
type: Rectangle
direction: inout
description: |
The focus windows used by the AF algorithm when AfMetering is set to
AfMeteringWindows.
@ -665,6 +700,7 @@ controls:
- AfTrigger:
type: int32_t
direction: in
description: |
Start an autofocus scan.
@ -690,6 +726,7 @@ controls:
- AfPause:
type: int32_t
direction: in
description: |
Pause lens movements when in continuous autofocus mode.
@ -734,6 +771,7 @@ controls:
- LensPosition:
type: float
direction: inout
description: |
Set and report the focus lens position.
@ -768,6 +806,7 @@ controls:
- AfState:
type: int32_t
direction: out
description: |
The current state of the AF algorithm.
@ -825,6 +864,7 @@ controls:
- AfPauseState:
type: int32_t
direction: out
description: |
Report whether the autofocus is currently running, paused or pausing.
@ -860,6 +900,7 @@ controls:
- HdrMode:
type: int32_t
direction: inout
description: |
Set the mode to be used for High Dynamic Range (HDR) imaging.
@ -926,6 +967,7 @@ controls:
- HdrChannel:
type: int32_t
direction: out
description: |
The HDR channel used to capture the frame.
@ -960,6 +1002,7 @@ controls:
- Gamma:
type: float
direction: inout
description: |
Specify a fixed gamma value.
@ -968,6 +1011,7 @@ controls:
- DebugMetadataEnable:
type: bool
direction: inout
description: |
Enable or disable the debug metadata.

View file

@ -10,6 +10,7 @@ vendor: draft
controls:
- AePrecaptureTrigger:
type: int32_t
direction: inout
description: |
Control for AE metering trigger. Currently identical to
ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER.
@ -31,6 +32,7 @@ controls:
- NoiseReductionMode:
type: int32_t
direction: inout
description: |
Control to select the noise reduction algorithm mode. Currently
identical to ANDROID_NOISE_REDUCTION_MODE.
@ -59,6 +61,7 @@ controls:
- ColorCorrectionAberrationMode:
type: int32_t
direction: inout
description: |
Control to select the color correction aberration mode. Currently
identical to ANDROID_COLOR_CORRECTION_ABERRATION_MODE.
@ -79,6 +82,7 @@ controls:
- AeState:
type: int32_t
direction: out
description: |
Control to report the current AE algorithm state. Currently identical to
ANDROID_CONTROL_AE_STATE.
@ -108,6 +112,7 @@ controls:
- AwbState:
type: int32_t
direction: out
description: |
Control to report the current AWB algorithm state. Currently identical
to ANDROID_CONTROL_AWB_STATE.
@ -129,6 +134,7 @@ controls:
- SensorRollingShutterSkew:
type: int64_t
direction: out
description: |
Control to report the time between the start of exposure of the first
row and the start of exposure of the last row. Currently identical to
@ -136,6 +142,7 @@ controls:
- LensShadingMapMode:
type: int32_t
direction: inout
description: |
Control to report if the lens shading map is available. Currently
identical to ANDROID_STATISTICS_LENS_SHADING_MAP_MODE.
@ -149,6 +156,7 @@ controls:
- PipelineDepth:
type: int32_t
direction: out
description: |
Specifies the number of pipeline stages the frame went through from when
it was exposed to when the final completed result was available to the
@ -163,6 +171,7 @@ controls:
- MaxLatency:
type: int32_t
direction: out
description: |
The maximum number of frames that can occur after a request (different
than the previous) has been submitted, and before the result's state
@ -172,6 +181,7 @@ controls:
- TestPatternMode:
type: int32_t
direction: inout
description: |
Control to select the test pattern mode. Currently identical to
ANDROID_SENSOR_TEST_PATTERN_MODE.
@ -229,6 +239,7 @@ controls:
- FaceDetectMode:
type: int32_t
direction: inout
description: |
Control to select the face detection mode used by the pipeline.
@ -262,6 +273,7 @@ controls:
- FaceDetectFaceRectangles:
type: Rectangle
direction: out
description: |
Boundary rectangles of the detected faces. The number of values is
the number of detected faces.
@ -273,6 +285,7 @@ controls:
- FaceDetectFaceScores:
type: uint8_t
direction: out
description: |
Confidence score of each of the detected faces. The range of score is
[0, 100]. The number of values should be the number of faces reported
@ -285,6 +298,7 @@ controls:
- FaceDetectFaceLandmarks:
type: Point
direction: out
description: |
Array of human face landmark coordinates in format [..., left_eye_i,
right_eye_i, mouth_i, left_eye_i+1, ...], with i = index of face. The
@ -298,6 +312,7 @@ controls:
- FaceDetectFaceIds:
type: int32_t
direction: out
description: |
Each detected face is given a unique ID that is valid for as long as the
face is visible to the camera device. A face that leaves the field of

View file

@ -9,6 +9,7 @@ vendor: rpi
controls:
- StatsOutputEnable:
type: bool
direction: inout
description: |
Toggles the Raspberry Pi IPA to output the hardware generated statistics.
@ -21,6 +22,7 @@ controls:
- Bcm2835StatsOutput:
type: uint8_t
size: [n]
direction: out
description: |
Span of the BCM2835 ISP generated statistics for the current frame.
@ -33,6 +35,7 @@ controls:
- ScalerCrops:
type: Rectangle
size: [n]
direction: out
description: |
An array of rectangles, where each singular value has identical
functionality to the ScalerCrop control. This control allows the