summaryrefslogtreecommitdiffstats
path: root/camera/device
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2018-01-25 23:37:41 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2018-01-25 23:37:41 +0000
commit354db50595b2b44bb432d1af751887b33ee21ea4 (patch)
treec1dbf51f96ecca5752a9000ca2b6446262e6dcd2 /camera/device
parentd0bd4f11f893ff8b54a5e04ea58f49aa93fd9cf5 (diff)
parentfb1c15434256c208916d13d63c0df221491e2535 (diff)
downloadandroid_hardware_interfaces-354db50595b2b44bb432d1af751887b33ee21ea4.tar.gz
android_hardware_interfaces-354db50595b2b44bb432d1af751887b33ee21ea4.tar.bz2
android_hardware_interfaces-354db50595b2b44bb432d1af751887b33ee21ea4.zip
Merge "External Camera: more CTS fix"
Diffstat (limited to 'camera/device')
-rw-r--r--camera/device/3.4/default/ExternalCameraDevice.cpp2
-rw-r--r--camera/device/3.4/default/ExternalCameraDeviceSession.cpp15
-rw-r--r--camera/device/3.4/default/include/ext_device_v3_4_impl/ExternalCameraDeviceSession.h2
3 files changed, 12 insertions, 7 deletions
diff --git a/camera/device/3.4/default/ExternalCameraDevice.cpp b/camera/device/3.4/default/ExternalCameraDevice.cpp
index c1f611457..e6e0ae3ef 100644
--- a/camera/device/3.4/default/ExternalCameraDevice.cpp
+++ b/camera/device/3.4/default/ExternalCameraDevice.cpp
@@ -47,7 +47,7 @@ const std::array<uint32_t, /*size*/1> kSupportedFourCCs {{
// Also make sure that can be done without editing source code
// TODO: b/72261675: make it dynamic since this affects memory usage
-const int kMaxJpegSize = {13 * 1024 * 1024}; // 13MB
+const int kMaxJpegSize = {5 * 1024 * 1024}; // 5MB
} // anonymous namespace
ExternalCameraDevice::ExternalCameraDevice(const std::string& cameraId) :
diff --git a/camera/device/3.4/default/ExternalCameraDeviceSession.cpp b/camera/device/3.4/default/ExternalCameraDeviceSession.cpp
index 2face781d..0714ee2be 100644
--- a/camera/device/3.4/default/ExternalCameraDeviceSession.cpp
+++ b/camera/device/3.4/default/ExternalCameraDeviceSession.cpp
@@ -1681,6 +1681,7 @@ Status ExternalCameraDeviceSession::configureStreams(
switch (config.streams[i].format) {
case PixelFormat::BLOB:
case PixelFormat::YCBCR_420_888:
+ case PixelFormat::YV12: // Used by SurfaceTexture
// No override
out->streams[i].v3_2.overrideFormat = config.streams[i].format;
break;
@@ -1693,7 +1694,7 @@ Status ExternalCameraDeviceSession::configureStreams(
mStreamMap[config.streams[i].id].format = out->streams[i].v3_2.overrideFormat;
break;
default:
- ALOGE("%s: unsupported format %x", __FUNCTION__, config.streams[i].format);
+ ALOGE("%s: unsupported format 0x%x", __FUNCTION__, config.streams[i].format);
return Status::ILLEGAL_ARGUMENT;
}
}
@@ -1847,15 +1848,14 @@ status_t ExternalCameraDeviceSession::fillCaptureResult(
const uint8_t ae_lock = ANDROID_CONTROL_AE_LOCK_OFF;
UPDATE(md, ANDROID_CONTROL_AE_LOCK, &ae_lock, 1);
-
- // TODO: b/72261912 AF should stay LOCKED until cancel is seen
- bool afTrigger = false;
+ bool afTrigger = mAfTrigger;
if (md.exists(ANDROID_CONTROL_AF_TRIGGER)) {
+ Mutex::Autolock _l(mLock);
camera_metadata_entry entry = md.find(ANDROID_CONTROL_AF_TRIGGER);
if (entry.data.u8[0] == ANDROID_CONTROL_AF_TRIGGER_START) {
- afTrigger = true;
+ mAfTrigger = afTrigger = true;
} else if (entry.data.u8[0] == ANDROID_CONTROL_AF_TRIGGER_CANCEL) {
- afTrigger = false;
+ mAfTrigger = afTrigger = false;
}
}
@@ -1885,6 +1885,9 @@ status_t ExternalCameraDeviceSession::fillCaptureResult(
return -EINVAL;
}
+ const uint8_t flashState = ANDROID_FLASH_STATE_UNAVAILABLE;
+ UPDATE(md, ANDROID_FLASH_STATE, &flashState, 1);
+
// android.scaler
const int32_t crop_region[] = {
active_array_size.data.i32[0], active_array_size.data.i32[1],
diff --git a/camera/device/3.4/default/include/ext_device_v3_4_impl/ExternalCameraDeviceSession.h b/camera/device/3.4/default/include/ext_device_v3_4_impl/ExternalCameraDeviceSession.h
index d8a17f611..7d7f52c97 100644
--- a/camera/device/3.4/default/include/ext_device_v3_4_impl/ExternalCameraDeviceSession.h
+++ b/camera/device/3.4/default/include/ext_device_v3_4_impl/ExternalCameraDeviceSession.h
@@ -359,6 +359,8 @@ protected:
// Stream ID -> circulating buffers map
std::map<int, CirculatingBuffers> mCirculatingBuffers;
+ bool mAfTrigger = false;
+
static HandleImporter sHandleImporter;
/* Beginning of members not changed after initialize() */