From ddc627bdf642a968db9b67bab4eb01f829c43427 Mon Sep 17 00:00:00 2001 From: zhanglei Date: Tue, 26 Aug 2025 18:01:35 +0800 Subject: [PATCH] add camera hdi Signed-off-by: zhanglei --- .../include/camera_device_ability_items.h | 20 +++++++++++++++++++ .../include/camera_metadata_item_info.h | 4 ++++ camera/metadata/src/camera_metadata_info.cpp | 2 ++ 3 files changed, 26 insertions(+) diff --git a/camera/metadata/include/camera_device_ability_items.h b/camera/metadata/include/camera_device_ability_items.h index 2f3c26eb..399303e3 100644 --- a/camera/metadata/include/camera_device_ability_items.h +++ b/camera/metadata/include/camera_device_ability_items.h @@ -1149,6 +1149,20 @@ typedef enum camera_device_metadata_tag { * (i.e. byte ...) */ OHOS_CONTROL_QUALITY_PRIORITIZATION, + /** + * ohos.ability.photoQualityPrioritization [static, byte, public] + * + * camera device property, report current camera support photo quality prioritization + * (i.e. int32_t[]: [MODE, VALUE, MODE_END] ...) + */ + OHOS_ABILITY_PHOTO_QUALITY_PRIORITIZATION, + /** + * ohos.control.photoQualityPrioritization [static, byte, public] + * + * camera device property, set current camera photo quality prioritization + * (i.e. byte ...) + */ + OHOS_CONTROL_PHOTO_QUALITY_PRIORITIZATION, /** * ohos.device.controlEnd * @@ -3088,4 +3102,10 @@ enum SketchStreamInfoStatus { OHOS_CAMERA_SKETCH_STREAM_SUPPORT }; +// OHOS_ABILITY_PHOTO_QUALITY_PRIORITIZATION +// OHOS_CONTROL_PHOTO_QUALITY_PRIORITIZATION +typedef enum camera_photo_quality_prioritization { + OHOS_CAMERA_PHOTO_QUALITY_PRIORITIZATION_HIGH_QUALITY = 0, + OHOS_CAMERA_PHOTO_QUALITY_PRIORITIZATION_SPEED, +} camera_photo_quality_prioritization_t; #endif diff --git a/camera/metadata/include/camera_metadata_item_info.h b/camera/metadata/include/camera_metadata_item_info.h index babd8dd2..efa378a9 100644 --- a/camera/metadata/include/camera_metadata_item_info.h +++ b/camera/metadata/include/camera_metadata_item_info.h @@ -299,6 +299,10 @@ static item_info_t g_ohosCameraControl[OHOS_DEVICE_CONTROL_END - OHOS_DEVICE_CON OHOS_DEVICE_CONTROL_START] = {"sunBlockBlendColor", META_TYPE_BYTE, 1}, [OHOS_CONTROL_QUALITY_PRIORITIZATION - OHOS_DEVICE_CONTROL_START] = {"qualityPrioritization", META_TYPE_BYTE, 1}, + [OHOS_ABILITY_PHOTO_QUALITY_PRIORITIZATION - + OHOS_DEVICE_CONTROL_START] = {"supportedPhotoQualityPrioritizationValues", META_TYPE_INT32, -1}, + [OHOS_CONTROL_PHOTO_QUALITY_PRIORITIZATION - + OHOS_DEVICE_CONTROL_START] = {"photoQualityPrioritization", META_TYPE_INT32, 1}, }; static item_info_t g_ohosDeviceExposure[OHOS_DEVICE_EXPOSURE_END - OHOS_DEVICE_EXPOSURE_START] = { diff --git a/camera/metadata/src/camera_metadata_info.cpp b/camera/metadata/src/camera_metadata_info.cpp index d7dc536a..da308f75 100644 --- a/camera/metadata/src/camera_metadata_info.cpp +++ b/camera/metadata/src/camera_metadata_info.cpp @@ -183,6 +183,8 @@ const std::vector g_metadataTags = { OHOS_CONTROL_QUALITY_PRIORITIZATION, OHOS_CONTROL_AUTO_VIDEO_FRAME_RATE, OHOS_ABILITY_AUTO_VIDEO_FRAME_RATE, + OHOS_ABILITY_PHOTO_QUALITY_PRIORITIZATION, + OHOS_CONTROL_PHOTO_QUALITY_PRIORITIZATION, // Camera device image acquisition related OHOS_ABILITY_DEVICE_AVAILABLE_EXPOSUREMODES, -- Gitee