diff --git a/camera/metadata/include/camera_device_ability_items.h b/camera/metadata/include/camera_device_ability_items.h index 011e0a3914c86c36c309097312384843d69bd673..96f9dbd3a4d73469b928a88406620bfdba75b153 100644 --- a/camera/metadata/include/camera_device_ability_items.h +++ b/camera/metadata/include/camera_device_ability_items.h @@ -2337,6 +2337,20 @@ typedef enum camera_device_metadata_tag { * (i.e. enum: NONE/PORTRAIT ...) */ OHOS_CONTROL_COLOR_RESERVATION_TYPE, + /** + * ohos.ability.camera [static, enum, public] + * + * camera device property, report current camera control center supported + * (i.e. enum: support/unsupport ...) + */ + OHOS_ABILITY_CONTROL_CENTER_SUPPORTED, + /** + * ohos.ability.camera [static, enum[], public] + * + * camera device property, report current camera support control center effect type + * (i.e. enum[]: [BEAUTY, PORTRAIT] ...) + */ + OHOS_ABILITY_CONTROL_CENTER_EFFECT_TYPE, /** * ohos.camera.effectEnd * @@ -3022,6 +3036,18 @@ typedef enum camera_color_reservation_type { OHOS_CAMERA_COLOR_RESERVATION_PORTRAIT } camera_color_reservation_type_t; +// OHOS_ABILITY_CONTROL_CENTER_SUPPORTED +enum ControlCenterSupportedType { + OHOS_CAMERA_CONTROL_CENTER_NOT_SUPPORTED = 0, + OHOS_CAMERA_CONTROL_CENTER_SUPPORTED, +}; + +// OHOS_ABILITY_CONTROL_CENTER_EFFECT_TYPE +enum CameraControlCenterEffectType { + OHOS_CAMERA_CONTROL_CENTER_EFFECT_TYPE_BEAUTY = 0, + OHOS_CAMERA_CONTROL_CENTER_EFFECT_TYPE_PORTRAIT, +}; + // OHOS_CONTROL_PRERECORD_MODE enum CameraPrerecordMode { OHOS_CAMERA_PRERECORD_MODE_ON = 1, diff --git a/camera/metadata/include/camera_metadata_item_info.h b/camera/metadata/include/camera_metadata_item_info.h index 14b85f568053f970258efc6d0f77dcac7142f377..2e0ebc78f2ee5c4ffaed3acbb5aea73f15d666ae 100644 --- a/camera/metadata/include/camera_metadata_item_info.h +++ b/camera/metadata/include/camera_metadata_item_info.h @@ -591,6 +591,10 @@ static item_info_t g_ohosPostProcess[OHOS_CAMERA_EFFECT_END - OHOS_CAMERA_EFFECT OHOS_CAMERA_EFFECT_START] = {"colorReservationTypes", META_TYPE_BYTE, -1}, [OHOS_CONTROL_COLOR_RESERVATION_TYPE - OHOS_CAMERA_EFFECT_START] = {"colorReservationType", META_TYPE_BYTE, 1}, + [OHOS_ABILITY_CONTROL_CENTER_SUPPORTED - + OHOS_CAMERA_EFFECT_START] = {"controlCenterSupported", META_TYPE_BYTE, 1}, + [OHOS_ABILITY_CONTROL_CENTER_EFFECT_TYPE - + OHOS_CAMERA_EFFECT_START] = {"controlCenterEffectType", META_TYPE_BYTE, -1}, }; static item_info_t g_ohosCameraSecure[OHOS_CAMERA_SECURE_END - OHOS_CAMERA_SECURE_START] = { diff --git a/camera/metadata/src/camera_metadata_info.cpp b/camera/metadata/src/camera_metadata_info.cpp index 807ed8a4de188099751d00761255140bdbb151b0..f02d4651e5aebd6be2f569c5a62b34775248f283 100644 --- a/camera/metadata/src/camera_metadata_info.cpp +++ b/camera/metadata/src/camera_metadata_info.cpp @@ -350,6 +350,8 @@ const std::vector g_metadataTags = { OHOS_MOVING_PHOTO_END, OHOS_ABILITY_COLOR_RESERVATION_TYPES, OHOS_CONTROL_COLOR_RESERVATION_TYPE, + OHOS_ABILITY_CONTROL_CENTER_SUPPORTED, + OHOS_ABILITY_CONTROL_CENTER_EFFECT_TYPE, // camera secure related OHOS_CONTROL_SECURE_FACE_MODE,