diff --git a/services/cameraservice/cameraoperator/client/include/dcamera_client.h b/services/cameraservice/cameraoperator/client/include/dcamera_client.h index e52799fb956cbc79d6be6bf86863901fbef7819c..164d43f4d92449661704f04537e99897de731a0a 100644 --- a/services/cameraservice/cameraoperator/client/include/dcamera_client.h +++ b/services/cameraservice/cameraoperator/client/include/dcamera_client.h @@ -73,7 +73,6 @@ private: private: constexpr static uint32_t DCAMERA_MAX_METADATA_SIZE = 20; - constexpr static int32_t DCAMERA_CAPTURE_ROTATE_360 = 360; bool isInit_; std::string cameraId_; diff --git a/services/cameraservice/cameraoperator/client/src/dcamera_client.cpp b/services/cameraservice/cameraoperator/client/src/dcamera_client.cpp index dbb77a260be81e48ecb01b283ca3e72dbd4e4d68..e9d2d17a31c1546d4952b94d3b34a9ab33db9f19 100644 --- a/services/cameraservice/cameraoperator/client/src/dcamera_client.cpp +++ b/services/cameraservice/cameraoperator/client/src/dcamera_client.cpp @@ -584,29 +584,11 @@ void DCameraClient::SetPhotoCaptureRotation(const std::shared_ptrget(), OHOS_JPEG_ORIENTATION, &item); if ((ret == CAM_META_SUCCESS) && (rotationCount == item.count)) { - int32_t oriSetRotate = item.data.i32[0]; - int32_t setRotate = oriSetRotate; - int32_t sensorRotate = 0; - std::string abilityString = ((sptr &)cameraInput_)->GetCameraSettings(); - std::shared_ptr cameraAbility = Camera::MetadataUtils::DecodeFromString(abilityString); - if (cameraAbility != nullptr) { - camera_metadata_item_t itemSensor; - ret = Camera::FindCameraMetadataItem(cameraAbility->get(), OHOS_SENSOR_ORIENTATION, &itemSensor); - if ((ret == CAM_META_SUCCESS) && (rotationCount == itemSensor.count)) { - sensorRotate = itemSensor.data.i32[0]; - setRotate = setRotate - sensorRotate; - } - } - - if (setRotate < 0) { - setRotate += DCAMERA_CAPTURE_ROTATE_360; - } - CameraStandard::PhotoCaptureSetting::RotationConfig rotation = - static_cast(setRotate); + static_cast(item.data.i32[0]); photoCaptureSetting->SetRotation(rotation); - DHLOGI("SetPhotoCaptureRotation %s photo set %d rotation: %d setRotate: %d sensorRotate: %d oriSetRotate: %d", - GetAnonyString(cameraId_).c_str(), item.count, rotation, setRotate, sensorRotate, oriSetRotate); + DHLOGI("SetPhotoCaptureRotation %s photo capture settings set %d rotation: %d", + GetAnonyString(cameraId_).c_str(), item.count, rotation); } } diff --git a/services/cameraservice/cameraoperator/client/test/unittest/common/cameraoperator/dcamera_client_test.cpp b/services/cameraservice/cameraoperator/client/test/unittest/common/cameraoperator/dcamera_client_test.cpp index 83ca1e01df17818bb83c2e7b0a6290dca330ec7f..7f42eef21a162ae2952a57b3774deac41ca4e9be 100644 --- a/services/cameraservice/cameraoperator/client/test/unittest/common/cameraoperator/dcamera_client_test.cpp +++ b/services/cameraservice/cameraoperator/client/test/unittest/common/cameraoperator/dcamera_client_test.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. * 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 @@ -476,6 +476,8 @@ HWTEST_F(DCameraClientTest, dcamera_client_test_007, TestSize.Level1) uint8_t afMode = OHOS_CAMERA_FOCUS_MODE_AUTO; uint8_t aeMode = OHOS_CAMERA_EXPOSURE_MODE_CONTINUOUS_AUTO; uint8_t stabilizationMode = OHOS_CAMERA_VIDEO_STABILIZATION_OFF; + int32_t orientation = OHOS_CAMERA_JPEG_ROTATION_0; + metaData->addEntry(OHOS_JPEG_ORIENTATION, &orientation, sizeof(int32_t)); metaData->addEntry(OHOS_CONTROL_FOCUS_MODE, &afMode, sizeof(afMode)); metaData->addEntry(OHOS_CONTROL_EXPOSURE_MODE, &aeMode, sizeof(aeMode)); metaData->addEntry(OHOS_CONTROL_VIDEO_STABILIZATION_MODE, &stabilizationMode, sizeof(stabilizationMode));