/*
|
* xcam_params.h - 3A parameters
|
*
|
* Copyright (c) 2015 Intel Corporation
|
*
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
* you may not use this file except in compliance with the License.
|
* You may obtain a copy of the License at
|
*
|
* http://www.apache.org/licenses/LICENSE-2.0
|
*
|
* Unless required by applicable law or agreed to in writing, software
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
* See the License for the specific language governing permissions and
|
* limitations under the License.
|
*
|
* Author: Wind Yuan <feng.yuan@intel.com>
|
*/
|
|
#ifndef C_XCAM_PARAMS_H
|
#define C_XCAM_PARAMS_H
|
|
#include <base/xcam_defs.h>
|
#include <base/xcam_common.h>
|
#include <base/xcam_3a_types.h>
|
|
XCAM_BEGIN_DECLARE
|
|
typedef struct _XCamAeParam {
|
XCamAeMode mode;
|
XCamAeMeteringMode metering_mode;
|
XCam3AWindow window;
|
XCam3AWindow window_list[XCAM_AE_MAX_METERING_WINDOW_COUNT];
|
XCamFlickerMode flicker_mode;
|
/* speed, default 1.0 */
|
double speed;
|
|
/* exposure limitation */
|
uint64_t exposure_time_min, exposure_time_max;
|
double max_analog_gain;
|
|
/* exposure manual values */
|
uint64_t manual_exposure_time;
|
double manual_analog_gain;
|
|
double aperture_fn;
|
|
/*ev*/
|
double ev_shift;
|
} XCamAeParam;
|
|
typedef struct _XCamAwbParam {
|
XCamAwbMode mode;
|
/* speed, default 1.0 */
|
double speed;
|
uint32_t cct_min, cct_max;
|
XCam3AWindow window;
|
|
/* manual gain, default 0.0 */
|
double gr_gain;
|
double r_gain;
|
double b_gain;
|
double gb_gain;
|
} XCamAwbParam;
|
|
typedef struct _XCamAfParam {
|
|
} XCamAfParam;
|
|
typedef struct _XCamCommonParam {
|
/* R, G, B gamma table, size = XCAM_GAMMA_TABLE_SIZE */
|
bool is_manual_gamma;
|
double r_gamma [XCAM_GAMMA_TABLE_SIZE];
|
double g_gamma [XCAM_GAMMA_TABLE_SIZE];
|
double b_gamma [XCAM_GAMMA_TABLE_SIZE];
|
|
/*
|
* manual brightness, contrast, hue, saturation, sharpness
|
* -1.0 < value < 1.0
|
*/
|
double nr_level;
|
double tnr_level;
|
|
double brightness;
|
double contrast;
|
double hue;
|
double saturation;
|
double sharpness;
|
|
/* others */
|
bool enable_dvs;
|
bool enable_gbce;
|
bool enable_night_mode;
|
XCamColorEffect color_effect;
|
} XCamCommonParam;
|
|
typedef struct _XCamSmartAnalysisParam {
|
uint32_t width;
|
uint32_t height;
|
double fps;
|
|
} XCamSmartAnalysisParam;
|
|
XCAM_END_DECLARE
|
|
#endif //C_XCAM_PARAMS_H
|