summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--camera/QCamera2/HAL3/QCamera3HWI.cpp38
-rw-r--r--device-common.mk4
2 files changed, 22 insertions, 20 deletions
diff --git a/camera/QCamera2/HAL3/QCamera3HWI.cpp b/camera/QCamera2/HAL3/QCamera3HWI.cpp
index c8b5d45a..3b49d5e9 100644
--- a/camera/QCamera2/HAL3/QCamera3HWI.cpp
+++ b/camera/QCamera2/HAL3/QCamera3HWI.cpp
@@ -1528,7 +1528,7 @@ int QCamera3HardwareInterface::configureStreamsPerfLocked(
/* Check whether we have video stream */
m_bIs4KVideo = false;
m_bIsVideo = false;
- m_bEisSupportedSize = true;
+ m_bEisSupportedSize = false;
m_bTnrEnabled = false;
bool isZsl = false;
bool isPreview = false;
@@ -1598,8 +1598,7 @@ int QCamera3HardwareInterface::configureStreamsPerfLocked(
eis_prop_set = (uint8_t)atoi(eis_prop);
m_bEisEnable = eis_prop_set && (!oisSupported && eisSupported) &&
- (mOpMode != CAMERA3_STREAM_CONFIGURATION_CONSTRAINED_HIGH_SPEED_MODE) &&
- (gCamCapability[mCameraId]->position != CAM_POSITION_FRONT);
+ (mOpMode != CAMERA3_STREAM_CONFIGURATION_CONSTRAINED_HIGH_SPEED_MODE);
/* stream configurations */
for (size_t i = 0; i < streamList->num_streams; i++) {
@@ -1632,18 +1631,17 @@ int QCamera3HardwareInterface::configureStreamsPerfLocked(
}
if ((HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED == newStream->format) &&
- (IS_USAGE_PREVIEW(newStream->usage) || IS_USAGE_VIDEO(newStream->usage))) {
- if (IS_USAGE_VIDEO(newStream->usage)) {
- videoWidth = newStream->width;
- videoHeight = newStream->height;
- m_bIsVideo = true;
- if ((VIDEO_4K_WIDTH <= newStream->width) &&
- (VIDEO_4K_HEIGHT <= newStream->height)) {
- m_bIs4KVideo = true;
- }
- }
- m_bEisSupportedSize &= (newStream->width <= maxEisWidth) &&
+ (newStream->usage & private_handle_t::PRIV_FLAGS_VIDEO_ENCODER)) {
+ m_bIsVideo = true;
+ videoWidth = newStream->width;
+ videoHeight = newStream->height;
+ if ((VIDEO_4K_WIDTH <= newStream->width) &&
+ (VIDEO_4K_HEIGHT <= newStream->height)) {
+ m_bIs4KVideo = true;
+ }
+ m_bEisSupportedSize = (newStream->width <= maxEisWidth) &&
(newStream->height <= maxEisHeight);
+
}
if (newStream->stream_type == CAMERA3_STREAM_BIDIRECTIONAL ||
newStream->stream_type == CAMERA3_STREAM_OUTPUT) {
@@ -1713,6 +1711,11 @@ int QCamera3HardwareInterface::configureStreamsPerfLocked(
}
}
+ if (gCamCapability[mCameraId]->position == CAM_POSITION_FRONT ||
+ !m_bIsVideo) {
+ m_bEisEnable = false;
+ }
+
if (validateUsageFlagsForEis(streamList) != NO_ERROR) {
pthread_mutex_unlock(&mMutex);
return -EINVAL;
@@ -3713,13 +3716,8 @@ int QCamera3HardwareInterface::processCaptureRequest(
ADD_SET_PARAM_ENTRY_TO_BATCH(mParameters, CAM_INTF_META_CAPTURE_INTENT, captureIntent);
}
- uint8_t fwkVideoStabMode=0;
- if (meta.exists(ANDROID_CONTROL_VIDEO_STABILIZATION_MODE)) {
- fwkVideoStabMode = meta.find(ANDROID_CONTROL_VIDEO_STABILIZATION_MODE).data.u8[0];
- }
//If EIS is enabled, turn it on for video
- bool setEis = m_bEisEnable && (m_bIsVideo || fwkVideoStabMode) && m_bEisSupportedSize &&
- !meta.exists(QCAMERA3_USE_AV_TIMER);
+ bool setEis = m_bEisEnable && m_bEisSupportedSize && !meta.exists(QCAMERA3_USE_AV_TIMER);
int32_t vsMode;
vsMode = (setEis)? DIS_ENABLE: DIS_DISABLE;
if (ADD_SET_PARAM_ENTRY_TO_BATCH(mParameters, CAM_INTF_PARM_DIS_ENABLE, vsMode)) {
diff --git a/device-common.mk b/device-common.mk
index 013a86d4..08ef6442 100644
--- a/device-common.mk
+++ b/device-common.mk
@@ -70,6 +70,10 @@ endif
PRODUCT_PROPERTY_OVERRIDES += \
ro.opengles.version=196610
+# b/68017541
+PRODUCT_PROPERTY_OVERRIDES += \
+ ro.qcom.adreno.qgl.ShaderStorageImageExtendedFormats=0
+
# HWUI common settings
PRODUCT_PROPERTY_OVERRIDES += \
ro.hwui.gradient_cache_size=1 \