xref: /aosp_15_r20/system/media/camera/docs/camera_device_info.proto (revision b9df5ad1c9ac98a7fefaac271a55f7ae3db05414)
1// LINT: LEGACY_NAMES
2syntax = "proto2";
3
4package wireless.android.partner.adl.proto;
5
6option java_package = "com.google.wireless.android.partner.adl.proto";
7option java_outer_classname = "CameraDeviceInfoProto";
8
9// Content of this file is generated from $(ANDROID_ROOT)/system/media/camera/doc
10// Keep internal protocol buffer definition in sync with this one
11// Camera related device information
12// Next Id: 9
13message CameraDeviceInfo {
14  // Supported profiles from CamcorderProfile.hasProfile
15  optional bool profile_480p = 1;
16  optional bool profile_720p = 2;
17  optional bool profile_1080p = 3;
18  optional bool profile_cif = 4;
19  optional bool profile_qcif = 5;
20  optional bool profile_qvga = 6;
21  optional int32 num_of_camera = 7;
22
23  message PerCameraInfo {
24    message Rational {
25        optional int32 numerator = 1;
26        optional int32 denominator = 2;
27    }
28
29    message Size {
30        optional int32 width = 1;
31        optional int32 height = 2;
32    }
33
34    message SizeF {
35        optional float width = 1;
36        optional float height = 2;
37    }
38
39    message Rect {
40        optional int32 left = 1;
41        optional int32 right = 2;
42        optional int32 top = 3;
43        optional int32 bottom = 4;
44    }
45
46    message StreamConfigurations {
47        message StreamConfig {
48            optional int32 format = 1;
49            optional int32 width = 2;
50            optional int32 height = 3;
51            optional bool input = 4;
52            optional int64 minFrameDuration = 5;
53        }
54        repeated StreamConfig availableStreamConfigurations = 1;
55    }
56
57    message RangeFloat {
58        optional float lower = 1;
59        optional float upper = 2;
60    }
61
62    message RangeInt {
63        optional int32 lower = 1;
64        optional int32 upper = 2;
65    }
66
67    message RangeLong {
68        optional int64 lower = 1;
69        optional int64 upper = 2;
70    }
71
72    message ColorSpaceTransform {
73        repeated Rational elements = 1;
74    }
75
76    message BlackLevelPattern {
77        repeated int32 black_level_pattern = 1;
78    }
79
80    message MultiResolutionStreamConfigurations {
81        message MultiResolutionStreamConfig {
82            optional int32 format = 1;
83            optional int32 width = 2;
84            optional int32 height = 3;
85            optional string cameraId = 4;
86            optional bool input = 5;
87        }
88        repeated MultiResolutionStreamConfig availableMultiResolutionConfigurations = 1;
89    }
90
91    optional string cameraId = 1;
92
93    message Capability {
94        optional int32 mode = 1;
95        optional int32 maxStreamingWidth = 2;
96        optional int32 maxStreamingHeight = 3;
97        optional float minZoomRatio = 4;
98        optional float maxZoomRatio = 5;
99    }
100
101    message DynamicRangeProfiles {
102        repeated int64 dynamic_range_profiles = 1 [packed = true];
103    }
104
105    message DeviceStateSensorOrientationMap {
106        repeated int64 elements = 1 [packed = true];
107    }
108
109    message ColorSpaceProfiles {
110        message ColorSpaceProfile {
111            message FormatAndDynamicRangeProfiles {
112                optional int32 image_format = 1;
113                repeated int64 dynamic_range_profiles = 2 [packed = true];
114            }
115            optional int32 color_space = 1;
116            repeated FormatAndDynamicRangeProfiles image_formats = 2;
117        }
118        repeated ColorSpaceProfile color_space_profiles = 1;
119    }
120
121    // Start of codegen fields
122    repeated int32 android_colorCorrection_availableAberrationModes = 65536;
123    optional RangeInt android_colorCorrection_colorTemperatureRange = 65537;
124    repeated int32 android_colorCorrection_availableModes = 65538;
125    repeated int32 android_control_aeAvailableAntibandingModes = 131072;
126    repeated int32 android_control_aeAvailableModes = 131073;
127    repeated RangeInt android_control_aeAvailableTargetFpsRanges = 131074;
128    optional RangeInt android_control_aeCompensationRange = 131075;
129    optional Rational android_control_aeCompensationStep = 131076;
130    repeated int32 android_control_afAvailableModes = 131077;
131    repeated int32 android_control_availableEffects = 131078;
132    repeated int32 android_control_availableSceneModes = 131079;
133    repeated int32 android_control_availableVideoStabilizationModes = 131080;
134    repeated int32 android_control_awbAvailableModes = 131081;
135    optional int32 android_control_maxRegionsAe = 131082;
136    optional int32 android_control_maxRegionsAwb = 131083;
137    optional int32 android_control_maxRegionsAf = 131084;
138    optional bool android_control_aeLockAvailable = 131085;
139    optional bool android_control_awbLockAvailable = 131086;
140    repeated int32 android_control_availableModes = 131087;
141    optional RangeInt android_control_postRawSensitivityBoostRange = 131088;
142    repeated Capability android_control_availableExtendedSceneModeCapabilities = 131089;
143    optional RangeFloat android_control_zoomRatioRange = 131090;
144    repeated int32 android_control_availableSettingsOverrides = 131091;
145    optional bool android_control_autoframingAvailable = 131092;
146    optional RangeFloat android_control_lowLightBoostInfoLuminanceRange = 131093;
147    repeated int32 android_control_aeAvailablePriorityModes = 131094;
148    repeated int32 android_edge_availableEdgeModes = 262144;
149    optional int32 android_flash_singleStrengthMaxLevel = 327680;
150    optional int32 android_flash_singleStrengthDefaultLevel = 327681;
151    optional int32 android_flash_torchStrengthMaxLevel = 327682;
152    optional int32 android_flash_torchStrengthDefaultLevel = 327683;
153    optional bool android_flash_info_available = 393216;
154    optional int32 android_flash_info_strengthMaximumLevel = 393217;
155    optional int32 android_flash_info_strengthDefaultLevel = 393218;
156    repeated int32 android_hotPixel_availableHotPixelModes = 458752;
157    repeated Size android_jpeg_availableThumbnailSizes = 524288;
158    optional int32 android_lens_facing = 589824;
159    optional int32 android_lens_poseReference = 589825;
160    optional float android_lens_distortionMaximumResolution = 589826;
161    optional float android_lens_intrinsicCalibrationMaximumResolution = 589827;
162    repeated float android_lens_info_availableApertures = 655360;
163    repeated float android_lens_info_availableFilterDensities = 655361;
164    repeated float android_lens_info_availableFocalLengths = 655362;
165    repeated int32 android_lens_info_availableOpticalStabilization = 655363;
166    optional float android_lens_info_hyperfocalDistance = 655364;
167    optional float android_lens_info_minimumFocusDistance = 655365;
168    optional int32 android_lens_info_focusDistanceCalibration = 655366;
169    repeated int32 android_noiseReduction_availableNoiseReductionModes = 720896;
170    optional int32 android_request_maxNumOutputRaw = 851968;
171    optional int32 android_request_maxNumOutputProc = 851969;
172    optional int32 android_request_maxNumOutputProcStalling = 851970;
173    optional int32 android_request_maxNumInputStreams = 851971;
174    optional int32 android_request_pipelineMaxDepth = 851972;
175    optional int32 android_request_partialResultCount = 851973;
176    repeated int32 android_request_availableCapabilities = 851974;
177    optional DynamicRangeProfiles android_request_availableDynamicRangeProfiles = 851975;
178    optional int64 android_request_recommendedTenBitDynamicRangeProfile = 851976;
179    optional ColorSpaceProfiles android_request_availableColorSpaceProfiles = 851977;
180    optional float android_scaler_availableMaxDigitalZoom = 917504;
181    optional StreamConfigurations android_scaler_streamConfigurationMap = 917505;
182    optional int32 android_scaler_croppingType = 917506;
183    repeated MandatoryStreamCombination android_scaler_mandatoryStreamCombinations = 917507;
184    repeated MandatoryStreamCombination android_scaler_mandatoryConcurrentStreamCombinations = 917508;
185    repeated int32 android_scaler_availableRotateAndCropModes = 917509;
186    optional Size android_scaler_defaultSecureImageSize = 917510;
187    optional MultiResolutionStreamConfigurations android_scaler_multiResolutionStreamConfigurationMap = 917511;
188    optional StreamConfigurations android_scaler_streamConfigurationMapMaximumResolution = 917512;
189    repeated MandatoryStreamCombination android_scaler_mandatoryMaximumResolutionStreamCombinations = 917513;
190    repeated MandatoryStreamCombination android_scaler_mandatoryTenBitOutputStreamCombinations = 917514;
191    repeated MandatoryStreamCombination android_scaler_mandatoryPreviewStabilizationOutputStreamCombinations = 917515;
192    repeated int64 android_scaler_availableStreamUseCases = 917516;
193    repeated MandatoryStreamCombination android_scaler_mandatoryUseCaseStreamCombinations = 917517;
194    optional int32 android_sensor_referenceIlluminant1 = 983040;
195    optional int32 android_sensor_referenceIlluminant2 = 983041;
196    optional ColorSpaceTransform android_sensor_calibrationTransform1 = 983042;
197    optional ColorSpaceTransform android_sensor_calibrationTransform2 = 983043;
198    optional ColorSpaceTransform android_sensor_colorTransform1 = 983044;
199    optional ColorSpaceTransform android_sensor_colorTransform2 = 983045;
200    optional ColorSpaceTransform android_sensor_forwardMatrix1 = 983046;
201    optional ColorSpaceTransform android_sensor_forwardMatrix2 = 983047;
202    optional BlackLevelPattern android_sensor_blackLevelPattern = 983048;
203    optional int32 android_sensor_maxAnalogSensitivity = 983049;
204    optional int32 android_sensor_orientation = 983050;
205    repeated int32 android_sensor_availableTestPatternModes = 983051;
206    repeated Rect android_sensor_opticalBlackRegions = 983052;
207    optional int32 android_sensor_readoutTimestamp = 983053;
208    optional Rect android_sensor_info_activeArraySize = 1048576;
209    optional RangeInt android_sensor_info_sensitivityRange = 1048577;
210    optional int32 android_sensor_info_colorFilterArrangement = 1048578;
211    optional RangeLong android_sensor_info_exposureTimeRange = 1048579;
212    optional int64 android_sensor_info_maxFrameDuration = 1048580;
213    optional SizeF android_sensor_info_physicalSize = 1048581;
214    optional Size android_sensor_info_pixelArraySize = 1048582;
215    optional int32 android_sensor_info_whiteLevel = 1048583;
216    optional int32 android_sensor_info_timestampSource = 1048584;
217    optional bool android_sensor_info_lensShadingApplied = 1048585;
218    optional Rect android_sensor_info_preCorrectionActiveArraySize = 1048586;
219    optional Rect android_sensor_info_activeArraySizeMaximumResolution = 1048587;
220    optional Size android_sensor_info_pixelArraySizeMaximumResolution = 1048588;
221    optional Rect android_sensor_info_preCorrectionActiveArraySizeMaximumResolution = 1048589;
222    optional Size android_sensor_info_binningFactor = 1048590;
223    repeated int32 android_shading_availableModes = 1114112;
224    repeated int32 android_statistics_info_availableFaceDetectModes = 1245184;
225    optional int32 android_statistics_info_maxFaceCount = 1245185;
226    repeated bool android_statistics_info_availableHotPixelMapModes = 1245186;
227    repeated int32 android_statistics_info_availableLensShadingMapModes = 1245187;
228    repeated int32 android_statistics_info_availableOisDataModes = 1245188;
229    optional int32 android_tonemap_maxCurvePoints = 1310720;
230    repeated int32 android_tonemap_availableToneMapModes = 1310721;
231    optional int32 android_info_supportedHardwareLevel = 1441792;
232    optional string android_info_version = 1441793;
233    optional DeviceStateSensorOrientationMap android_info_deviceStateSensorOrientationMap = 1441794;
234    optional int32 android_info_sessionConfigurationQueryVersion = 1441795;
235    optional int32 android_sync_maxLatency = 1572864;
236    optional int32 android_reprocess_maxCaptureStall = 1638400;
237    optional bool android_depth_depthIsExclusive = 1703936;
238    optional int32 android_logicalMultiCamera_sensorSyncType = 1769472;
239    repeated int32 android_distortionCorrection_availableModes = 1835008;
240    optional int32 android_automotive_location = 2031616;
241    repeated int32 android_automotive_lens_facing = 2097152;
242    // End of codegen fields
243  }
244
245  // Per camera (front/back) informations
246  repeated PerCameraInfo per_camera_info = 8;
247} // CameraDeviceInfo
248
249