From fca6714fd6d72f6e9e47927d6ef246807cece7bf Mon Sep 17 00:00:00 2001 From: Susmitha Gummalla Date: Thu, 5 Mar 2020 14:58:30 -0800 Subject: [PATCH] Camera: Intialize useGrid and chooseHeic variables --Handle early return case in Heic Encoder Manager Bug: 150894246 CRs-Fixed: 2636054 Change-Id: I7f437241a1f33cc4cb4384369828e12b331b09c9 --- .../camera/libcameraservice/api2/HeicEncoderInfoManager.cpp | 6 ++++++ .../libcameraservice/common/CameraProviderManager.cpp | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/services/camera/libcameraservice/api2/HeicEncoderInfoManager.cpp b/services/camera/libcameraservice/api2/HeicEncoderInfoManager.cpp index d7cc2bf113..d36ca3b97a 100644 --- a/services/camera/libcameraservice/api2/HeicEncoderInfoManager.cpp +++ b/services/camera/libcameraservice/api2/HeicEncoderInfoManager.cpp @@ -91,6 +91,8 @@ bool HeicEncoderInfoManager::isSizeSupported(int32_t width, int32_t height, bool // The "measured-frame-rate-WIDTHxHEIGHT-range" key is optional. // Hardcode to some default value (3.33ms * tile count) based on resolution. *stall = 3333333LL * width * height / (kGridWidth * kGridHeight); + *useHeic = chooseHeic; + *useGrid = enableGrid; return true; } @@ -275,9 +277,13 @@ bool HeicEncoderInfoManager::getHevcCodecDetails( ALOGE("%s: Failed to get codec info for %s", __FUNCTION__, mime); break; } + ALOGV("%s: [%s] codec found", __FUNCTION__, + info->getCodecName()); // Filter out software ones as they may be too slow if (!(info->getAttributes() & MediaCodecInfo::kFlagIsHardwareAccelerated)) { + ALOGV("%s: [%s] Filter out software ones as they may be too slow", __FUNCTION__, + info->getCodecName()); continue; } diff --git a/services/camera/libcameraservice/common/CameraProviderManager.cpp b/services/camera/libcameraservice/common/CameraProviderManager.cpp index 0fd89f1a64..1d794a1a63 100644 --- a/services/camera/libcameraservice/common/CameraProviderManager.cpp +++ b/services/camera/libcameraservice/common/CameraProviderManager.cpp @@ -1008,7 +1008,8 @@ status_t CameraProviderManager::ProviderInfo::DeviceInfo3::fillHeicStreamCombina if (sizeAvail) continue; int64_t stall = 0; - bool useHeic, useGrid; + bool useHeic = false; + bool useGrid = false; if (camera3::HeicCompositeStream::isSizeSupportedByHeifEncoder( halStreamConfigs.data.i32[i+1], halStreamConfigs.data.i32[i+2], &useHeic, &useGrid, &stall)) {