summaryrefslogtreecommitdiff
path: root/libcamera2
diff options
context:
space:
mode:
authorSungjoong Kang <sj3.kang@samsung.com>2012-10-25 16:06:37 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2012-10-25 16:06:37 -0700
commit583e6c789edae1a762afbdfb1f5ccc5ed28ed326 (patch)
treee11745df9701d8320b05e34a6ada8a66d196e23f /libcamera2
parent1d87cce560563897ef592f4f9e7a24c39c3828a7 (diff)
parent0ad5fc615d65b3730af0f5324ab77608bdec0c15 (diff)
downloadexynos5-583e6c789edae1a762afbdfb1f5ccc5ed28ed326.tar.gz
am 0ad5fc61: am 34d2b94a: hardware: samsung_slsi: libcamera2: Fix flash torch mode
* commit '0ad5fc615d65b3730af0f5324ab77608bdec0c15': hardware: samsung_slsi: libcamera2: Fix flash torch mode
Diffstat (limited to 'libcamera2')
-rw-r--r--libcamera2/ExynosCameraHWInterface2.cpp19
-rw-r--r--libcamera2/MetadataConverter.cpp2
2 files changed, 8 insertions, 13 deletions
diff --git a/libcamera2/ExynosCameraHWInterface2.cpp b/libcamera2/ExynosCameraHWInterface2.cpp
index 49f3cf9..5b399ec 100644
--- a/libcamera2/ExynosCameraHWInterface2.cpp
+++ b/libcamera2/ExynosCameraHWInterface2.cpp
@@ -3348,18 +3348,12 @@ void ExynosCameraHWInterface2::m_sensorThreadFunc(SignalDrivenThread * self)
m_ctlInfo.flash.m_flashDecisionResult = false;
}
- // TODO : set torch mode for video recording. need to find proper position.
- // m_wideAspect is will be changed to recording hint
- if ((shot_ext->shot.ctl.flash.flashMode == CAM2_FLASH_MODE_SINGLE) && m_wideAspect) {
- shot_ext->shot.ctl.flash.flashMode = CAM2_FLASH_MODE_TORCH;
- shot_ext->shot.ctl.flash.firingPower = 10;
- m_ctlInfo.flash.m_flashTorchMode = true;
- } else if (m_wideAspect){
- shot_ext->shot.ctl.flash.flashMode = CAM2_FLASH_MODE_OFF;
- shot_ext->shot.ctl.flash.firingPower = 0;
- m_ctlInfo.flash.m_flashTorchMode = false;
+ if (shot_ext->shot.ctl.flash.flashMode == CAM2_FLASH_MODE_TORCH) {
+ if (m_ctlInfo.flash.m_flashTorchMode == false) {
+ m_ctlInfo.flash.m_flashTorchMode = true;
+ }
} else {
- if (m_ctlInfo.flash.m_flashTorchMode) {
+ if (m_ctlInfo.flash.m_flashTorchMode == true) {
shot_ext->shot.ctl.flash.flashMode = CAM2_FLASH_MODE_OFF;
shot_ext->shot.ctl.flash.firingPower = 0;
m_ctlInfo.flash.m_flashTorchMode = false;
@@ -4773,7 +4767,7 @@ void ExynosCameraHWInterface2::OnAfTrigger(int id)
switch (m_afMode) {
case AA_AFMODE_AUTO:
case AA_AFMODE_MACRO:
- case AA_AFMODE_OFF:
+ case AA_AFMODE_MANUAL:
ALOGV("[AF] OnAfTrigger - AUTO,MACRO,OFF (Mode %d) ", m_afMode);
// If flash is enable, Flash operation is executed before triggering AF
if ((m_ctlInfo.flash.i_flashMode >= AA_AEMODE_ON_AUTO_FLASH)
@@ -4796,6 +4790,7 @@ void ExynosCameraHWInterface2::OnAfTrigger(int id)
OnAfTriggerCAFPicture(id);
break;
+ case AA_AFMODE_OFF:
default:
break;
}
diff --git a/libcamera2/MetadataConverter.cpp b/libcamera2/MetadataConverter.cpp
index e4092bc..d3dd2b3 100644
--- a/libcamera2/MetadataConverter.cpp
+++ b/libcamera2/MetadataConverter.cpp
@@ -154,7 +154,7 @@ status_t MetadataConverter::ToInternalShot(camera_metadata_t * request, struct c
case ANDROID_FLASH_MODE:
if (NO_ERROR != CheckEntryTypeMismatch(&curr_entry, TYPE_BYTE, 1))
break;
- dst->ctl.flash.flashMode = (enum flash_mode)curr_entry.data.u8[0];
+ dst->ctl.flash.flashMode = (enum flash_mode)(curr_entry.data.u8[0] + 1);
break;
case ANDROID_FLASH_FIRING_POWER: