diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2012-03-16 15:48:30 +0100 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2012-05-01 12:13:56 +0200 |
commit | f030d07589524d07d5eaf7c2dfff607656889b8b (patch) | |
tree | be57ed8735b8ffbc6fb9cd7ca461f037c1e61978 /iq.h | |
parent | b0e966a8488e19fcc1c7eb86a217c5f7675a4da0 (diff) |
iq: Make the IQ parameters configurable
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'iq.h')
-rw-r--r-- | iq.h | 32 |
1 files changed, 31 insertions, 1 deletions
@@ -27,9 +27,39 @@ struct iq_tuning; struct omap3_isp_device; struct omap3_isp_aewb_stats; +/** + * struct iq_params - Image quality tuning parameters + * @mean_level: Target mean luminance level (fraction of the maximum) + * @exposure: Initial exposure value (sensor-specific units) + * @exposure_min: Minimum exposure value + * @exposure_max: Maximum exposure value + * @gain: Initial gain value (sensor-specific units) + * @gain_min: Minimum gain value + * @gain_max: Maximum gain value + * @black_level: Black level offset + */ +struct iq_params { + float mean_level; + + unsigned int exposure; + unsigned int exposure_min; + unsigned int exposure_max; + + unsigned int gain; + unsigned int gain_min; + unsigned int gain_max; + + unsigned int black_level; +}; + void iq_aewb_process(struct iq_tuning *iq, const struct omap3_isp_aewb_stats *stats); -struct iq_tuning *iq_init(struct omap3_isp_device *isp); + +void iq_params_init(struct iq_params *params); +int iq_params_parse(struct iq_params *params, const char *arg); + +struct iq_tuning *iq_init(struct omap3_isp_device *isp, + const struct iq_params *params); void iq_cleanup(struct iq_tuning *iq); #endif |