summaryrefslogtreecommitdiffstats
path: root/camera/inc
diff options
context:
space:
mode:
authorVladimir Petrov <vppetrov@mm-sol.com>2012-05-15 19:12:52 +0300
committerDaniel Levin <dendy@ti.com>2012-11-26 20:09:18 +0200
commit0069285d06d1bed96e407c97e7629800c3c53a14 (patch)
tree01c5e77cec5f8beec1214de4c12b8c47ba9c5cc6 /camera/inc
parent611ae47ef725be650157defcd728b1f0ab51f61e (diff)
downloadhardware_ti_omap4-0069285d06d1bed96e407c97e7629800c3c53a14.zip
hardware_ti_omap4-0069285d06d1bed96e407c97e7629800c3c53a14.tar.gz
hardware_ti_omap4-0069285d06d1bed96e407c97e7629800c3c53a14.tar.bz2
CameraHal: Add external gamma table configuration
- Added support to set external gamma table. Application can set camera parameter with key "gamma-table" and value in the form: "(OffsetR0:SlopeR0,OffsetR1:SlopeR1,...,OffsetRN:SlopeRN)," "(OffsetG0:SlopeG0,OffsetG1:SlopeG1,...,OffsetGN:SlopeGN)," "(OffsetB0:SlopeB0,OffsetB1:SlopeB1,...,OffsetBN:SlopeBN)" Depends on hardware/ti/domx change I199d28e2: http://review.omapzoom.org/#/c/27885/ Change-Id: I5dabde9b693cf8cb501ec8584729cd4fa174939c Signed-off-by: Vladimir Petrov <vppetrov@mm-sol.com>
Diffstat (limited to 'camera/inc')
-rw-r--r--camera/inc/General3A_Settings.h7
-rw-r--r--camera/inc/OMXCameraAdapter/OMXCameraAdapter.h6
-rw-r--r--camera/inc/TICameraParameters.h5
3 files changed, 14 insertions, 4 deletions
diff --git a/camera/inc/General3A_Settings.h b/camera/inc/General3A_Settings.h
index 777b255..c1e017c 100644
--- a/camera/inc/General3A_Settings.h
+++ b/camera/inc/General3A_Settings.h
@@ -241,13 +241,15 @@ class Gen3A_settings{
OMX_BOOL FocusLock;
OMX_BOOL WhiteBalanceLock;
- OMX_BOOL AlgoFixedGamma;
+ OMX_BOOL AlgoExternalGamma;
OMX_BOOL AlgoNSF1;
OMX_BOOL AlgoNSF2;
OMX_BOOL AlgoSharpening;
OMX_BOOL AlgoThreeLinColorMap;
OMX_BOOL AlgoGIC;
+ OMX_TI_CONFIG_GAMMATABLE_TYPE mGammaTable;
+
};
/*
@@ -274,12 +276,13 @@ enum E3ASettingsFlags
SetMeteringAreas = 1 << 18,
SetManualExposure = 1 << 19,
- SetAlgoFixedGamma = 1 << 20,
+ SetAlgoExternalGamma = 1 << 20,
SetAlgoNSF1 = 1 << 21,
SetAlgoNSF2 = 1 << 22,
SetAlgoSharpening = 1 << 23,
SetAlgoThreeLinColorMap = 1 << 24,
SetAlgoGIC = 1 << 25,
+ SetGammaTable = 1 << 26,
E3aSettingMax,
diff --git a/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h b/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h
index fa73918..b2da574 100644
--- a/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h
+++ b/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h
@@ -579,13 +579,17 @@ private:
const OMX_BOOL data, const char *msg);
status_t setParameter3ABoolInvert(const OMX_INDEXTYPE omx_idx,
const OMX_BOOL data, const char *msg);
- status_t setAlgoFixedGamma(Gen3A_settings& Gen3A);
+ status_t setAlgoExternalGamma(Gen3A_settings& Gen3A);
status_t setAlgoNSF1(Gen3A_settings& Gen3A);
status_t setAlgoNSF2(Gen3A_settings& Gen3A);
status_t setAlgoSharpening(Gen3A_settings& Gen3A);
status_t setAlgoThreeLinColorMap(Gen3A_settings& Gen3A);
status_t setAlgoGIC(Gen3A_settings& Gen3A);
+ //Gamma table
+ void updateGammaTable(const char* gamma);
+ status_t setGammaTable(Gen3A_settings& Gen3A);
+
status_t getEVCompensation(Gen3A_settings& Gen3A);
status_t getWBMode(Gen3A_settings& Gen3A);
status_t getSharpness(Gen3A_settings& Gen3A);
diff --git a/camera/inc/TICameraParameters.h b/camera/inc/TICameraParameters.h
index a2abaa6..c5a24e9 100644
--- a/camera/inc/TICameraParameters.h
+++ b/camera/inc/TICameraParameters.h
@@ -245,13 +245,16 @@ static const char KEY_MECHANICAL_MISALIGNMENT_CORRECTION_SUPPORTED[];
static const char KEY_MECHANICAL_MISALIGNMENT_CORRECTION[];
//TI extensions for enable/disable algos
-static const char KEY_ALGO_FIXED_GAMMA[];
+static const char KEY_ALGO_EXTERNAL_GAMMA[];
static const char KEY_ALGO_NSF1[];
static const char KEY_ALGO_NSF2[];
static const char KEY_ALGO_SHARPENING[];
static const char KEY_ALGO_THREELINCOLORMAP[];
static const char KEY_ALGO_GIC[];
+//Gamma table
+static const char KEY_GAMMA_TABLE[];
+
};
} // namespace Camera