blob: 4caf3e3ea27616a9834f26d019f8396e56037384 [file] [log] [blame]
/*
* Copyright (C) 2017 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*
* Autogenerated from camera metadata definitions in
* /system/media/camera/docs/metadata_definitions.xml
* *** DO NOT EDIT BY HAND ***
*/
package android.hardware.camera.metadata@3.4;
/* Include definitions from all prior minor HAL metadata revisions */
import android.hardware.camera.metadata@3.2;
import android.hardware.camera.metadata@3.3;
/**
* Top level hierarchy definitions for camera metadata. *_INFO sections are for
* the static metadata that can be retrived without opening the camera device.
*/
enum CameraMetadataSection : @3.3::CameraMetadataSection {
ANDROID_HEIC =
android.hardware.camera.metadata@3.3::CameraMetadataSection:ANDROID_SECTION_COUNT,
ANDROID_HEIC_INFO,
ANDROID_SECTION_COUNT_3_4,
VENDOR_SECTION_3_4 = 0x8000,
};
/**
* Hierarchy positions in enum space. All vendor extension sections must be
* defined with tag >= VENDOR_SECTION_START
*/
enum CameraMetadataSectionStart : android.hardware.camera.metadata@3.3::CameraMetadataSectionStart {
ANDROID_HEIC_START = CameraMetadataSection:ANDROID_HEIC << 16,
ANDROID_HEIC_INFO_START = CameraMetadataSection:ANDROID_HEIC_INFO << 16,
VENDOR_SECTION_START_3_4 = CameraMetadataSection:VENDOR_SECTION_3_4 << 16,
};
/**
* Main enumeration for defining camera metadata tags added in this revision
*
* <p>Partial documentation is included for each tag; for complete documentation, reference
* '/system/media/camera/docs/docs.html' in the corresponding Android source tree.</p>
*/
enum CameraMetadataTag : @3.3::CameraMetadataTag {
/** android.request.characteristicKeysNeedingPermission [static, int32[], hidden]
*
* <p>A list of camera characteristics keys that are only available
* in case the camera client has camera permission.</p>
*/
ANDROID_REQUEST_CHARACTERISTIC_KEYS_NEEDING_PERMISSION = android.hardware.camera.metadata@3.3::CameraMetadataTag:ANDROID_REQUEST_END_3_3,
ANDROID_REQUEST_END_3_4,
/** android.scaler.availableRecommendedStreamConfigurations [static, enum[], ndk_public]
*
* <p>Recommended stream configurations for common client use cases.</p>
*/
ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS = android.hardware.camera.metadata@3.2::CameraMetadataTag:ANDROID_SCALER_END,
/** android.scaler.availableRecommendedInputOutputFormatsMap [static, int32, ndk_public]
*
* <p>Recommended mappings of image formats that are supported by this
* camera device for input streams, to their corresponding output formats.</p>
*/
ANDROID_SCALER_AVAILABLE_RECOMMENDED_INPUT_OUTPUT_FORMATS_MAP,
ANDROID_SCALER_END_3_4,
/** android.info.supportedBufferManagementVersion [static, enum, system]
*
* <p>The version of buffer management API this camera device supports and opts into.</p>
*/
ANDROID_INFO_SUPPORTED_BUFFER_MANAGEMENT_VERSION = android.hardware.camera.metadata@3.3::CameraMetadataTag:ANDROID_INFO_END_3_3,
ANDROID_INFO_END_3_4,
/** android.depth.availableRecommendedDepthStreamConfigurations [static, int32[], ndk_public]
*
* <p>Recommended depth stream configurations for common client use cases.</p>
*/
ANDROID_DEPTH_AVAILABLE_RECOMMENDED_DEPTH_STREAM_CONFIGURATIONS = android.hardware.camera.metadata@3.2::CameraMetadataTag:ANDROID_DEPTH_END,
/** android.depth.availableDynamicDepthStreamConfigurations [static, enum[], ndk_public]
*
* <p>The available dynamic depth dataspace stream
* configurations that this camera device supports
* (i.e. format, width, height, output/input stream).</p>
*/
ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS,
/** android.depth.availableDynamicDepthMinFrameDurations [static, int64[], ndk_public]
*
* <p>This lists the minimum frame duration for each
* format/size combination for dynamic depth output streams.</p>
*/
ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_MIN_FRAME_DURATIONS,
/** android.depth.availableDynamicDepthStallDurations [static, int64[], ndk_public]
*
* <p>This lists the maximum stall duration for each
* output format/size combination for dynamic depth streams.</p>
*/
ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STALL_DURATIONS,
ANDROID_DEPTH_END_3_4,
/** android.logicalMultiCamera.activePhysicalId [dynamic, byte, public]
*
* <p>String containing the ID of the underlying active physical camera.</p>
*/
ANDROID_LOGICAL_MULTI_CAMERA_ACTIVE_PHYSICAL_ID = android.hardware.camera.metadata@3.3::CameraMetadataTag:ANDROID_LOGICAL_MULTI_CAMERA_END_3_3,
ANDROID_LOGICAL_MULTI_CAMERA_END_3_4,
/** android.heic.availableHeicStreamConfigurations [static, enum[], ndk_public]
*
* <p>The available HEIC (ISO/IEC 23008-12) stream
* configurations that this camera device supports
* (i.e. format, width, height, output/input stream).</p>
*/
ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS = CameraMetadataSectionStart:ANDROID_HEIC_START,
/** android.heic.availableHeicMinFrameDurations [static, int64[], ndk_public]
*
* <p>This lists the minimum frame duration for each
* format/size combination for HEIC output formats.</p>
*/
ANDROID_HEIC_AVAILABLE_HEIC_MIN_FRAME_DURATIONS,
/** android.heic.availableHeicStallDurations [static, int64[], ndk_public]
*
* <p>This lists the maximum stall duration for each
* output format/size combination for HEIC streams.</p>
*/
ANDROID_HEIC_AVAILABLE_HEIC_STALL_DURATIONS,
ANDROID_HEIC_END_3_4,
/** android.heic.info.supported [static, enum, system]
*
* <p>Whether this camera device can support identical set of stream combinations
* involving HEIC image format, compared to the
* <a href="https://developer.android.com/reference/android/hardware/camera2/CameraDevice.html#createCaptureSession">table of combinations</a>
* involving JPEG image format required for the device's hardware level and capabilities.</p>
*/
ANDROID_HEIC_INFO_SUPPORTED = CameraMetadataSectionStart:ANDROID_HEIC_INFO_START,
/** android.heic.info.maxJpegAppSegmentsCount [static, byte, system]
*
* <p>The maximum number of Jpeg APP segments supported by the camera HAL device.</p>
*/
ANDROID_HEIC_INFO_MAX_JPEG_APP_SEGMENTS_COUNT,
ANDROID_HEIC_INFO_END_3_4,
};
/*
* Enumeration definitions for the various entries that need them
*/
/** android.scaler.availableFormats enumeration values added since v3.2
* @see ANDROID_SCALER_AVAILABLE_FORMATS
*/
enum CameraMetadataEnumAndroidScalerAvailableFormats :
@3.2::CameraMetadataEnumAndroidScalerAvailableFormats {
ANDROID_SCALER_AVAILABLE_FORMATS_RAW10 = 0x25,
ANDROID_SCALER_AVAILABLE_FORMATS_RAW12 = 0x26,
ANDROID_SCALER_AVAILABLE_FORMATS_Y8 = 0x20203859,
};
/** android.scaler.availableRecommendedStreamConfigurations enumeration values
* @see ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS
*/
enum CameraMetadataEnumAndroidScalerAvailableRecommendedStreamConfigurations : uint32_t {
ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_PREVIEW
= 0x0,
ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_RECORD
= 0x1,
ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_VIDEO_SNAPSHOT
= 0x2,
ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_SNAPSHOT
= 0x3,
ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_ZSL
= 0x4,
ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_RAW
= 0x5,
ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_PUBLIC_END
= 0x6,
ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_VENDOR_START
= 0x18,
};
/** android.sensor.info.colorFilterArrangement enumeration values added since v3.2
* @see ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT
*/
enum CameraMetadataEnumAndroidSensorInfoColorFilterArrangement :
@3.2::CameraMetadataEnumAndroidSensorInfoColorFilterArrangement {
ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_MONO,
ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_NIR,
};
/** android.info.supportedBufferManagementVersion enumeration values
* @see ANDROID_INFO_SUPPORTED_BUFFER_MANAGEMENT_VERSION
*/
enum CameraMetadataEnumAndroidInfoSupportedBufferManagementVersion : uint32_t {
ANDROID_INFO_SUPPORTED_BUFFER_MANAGEMENT_VERSION_HIDL_DEVICE_3_5,
};
/** android.depth.availableDynamicDepthStreamConfigurations enumeration values
* @see ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS
*/
enum CameraMetadataEnumAndroidDepthAvailableDynamicDepthStreamConfigurations : uint32_t {
ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_OUTPUT,
ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_INPUT,
};
/** android.heic.availableHeicStreamConfigurations enumeration values
* @see ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS
*/
enum CameraMetadataEnumAndroidHeicAvailableHeicStreamConfigurations : uint32_t {
ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_OUTPUT,
ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_INPUT,
};
/** android.heic.info.supported enumeration values
* @see ANDROID_HEIC_INFO_SUPPORTED
*/
enum CameraMetadataEnumAndroidHeicInfoSupported : uint32_t {
ANDROID_HEIC_INFO_SUPPORTED_FALSE,
ANDROID_HEIC_INFO_SUPPORTED_TRUE,
};