From 30717de92454be87aa55ac91d2b94a7872a0fcfb Mon Sep 17 00:00:00 2001 From: Igor Murashkin Date: Thu, 23 May 2013 17:02:47 -0700 Subject: camera3: Make front cameras limited mode, back cameras full mode Bug: 9111852 Change-Id: Iad7ba75adf603a7c2eda1fa07c10ce4aab1aa51b --- camera/EmulatedFakeCamera3.cpp | 14 ++++++++++++++ camera/EmulatedFakeCamera3.h | 3 +++ 2 files changed, 17 insertions(+) diff --git a/camera/EmulatedFakeCamera3.cpp b/camera/EmulatedFakeCamera3.cpp index a321218..ae4716c 100644 --- a/camera/EmulatedFakeCamera3.cpp +++ b/camera/EmulatedFakeCamera3.cpp @@ -129,6 +129,12 @@ EmulatedFakeCamera3::EmulatedFakeCamera3(int cameraId, bool facingBack, for (size_t i = 0; i < CAMERA3_TEMPLATE_COUNT; i++) { mDefaultTemplates[i] = NULL; } + + /** + * Front cameras = limited mode + * Back cameras = full mode + */ + mFullMode = facingBack; } EmulatedFakeCamera3::~EmulatedFakeCamera3() { @@ -1323,6 +1329,14 @@ status_t EmulatedFakeCamera3::constructStaticInfo() { info.update(ANDROID_CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES, availableVstabModes, sizeof(availableVstabModes)); + // android.info + const uint8_t supportedHardwareLevel = + mFullMode ? ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_FULL : + ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED; + info.update(ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL, + &supportedHardwareLevel, + /*count*/1); + mCameraInfo = info.release(); return OK; diff --git a/camera/EmulatedFakeCamera3.h b/camera/EmulatedFakeCamera3.h index e9ef184..0889813 100644 --- a/camera/EmulatedFakeCamera3.h +++ b/camera/EmulatedFakeCamera3.h @@ -159,6 +159,9 @@ private: /* Facing back (true) or front (false) switch. */ bool mFacingBack; + /* Full mode (true) or limited mode (false) switch */ + bool mFullMode; + /** * Cache for default templates. Once one is requested, the pointer must be * valid at least until close() is called on the device -- cgit v1.2.3