Name: libmm-camcorder
Summary: Camera and recorder library
-Version: 0.10.286
+Version: 0.10.287
Release: 0
Group: Multimedia/Libraries
License: Apache-2.0
#define MMCAM_CAMERA_ISO "camera-iso"
/**
+ * Camera gain
+ */
+#define MMCAM_CAMERA_GAIN "camera-gain"
+
+/**
+ * Step of camera gain
+ */
+#define MMCAM_CAMERA_GAIN_STEP "camera-gain-step"
+
+/**
* Wide dynamic range.
* @see MMCamcorderWDRMode
*/
#define MMCAM_FILTER_WB "filter-wb"
/**
+ * White balance temperature
+ */
+#define MMCAM_FILTER_WB_TEMPERATURE "filter-wb-temperature"
+
+/**
+ * Step of white balance temperature
+ */
+#define MMCAM_FILTER_WB_TEMPERATURE_STEP "filter-wb-temperature-step"
+
+/**
* Color tone. (Color effect)
* @see MMCamcorderColorToneType
*/
* An enumeration for Automatic exposure.
*/
enum MMCamcorderAutoExposureType {
- MM_CAMCORDER_AUTO_EXPOSURE_OFF = 0, /**< AE off*/
- MM_CAMCORDER_AUTO_EXPOSURE_ALL, /**< AE on, XXX mode*/
- MM_CAMCORDER_AUTO_EXPOSURE_CENTER_1, /**< AE on, XXX mode*/
- MM_CAMCORDER_AUTO_EXPOSURE_CENTER_2, /**< AE on, XXX mode*/
- MM_CAMCORDER_AUTO_EXPOSURE_CENTER_3, /**< AE on, XXX mode*/
- MM_CAMCORDER_AUTO_EXPOSURE_SPOT_1, /**< AE on, XXX mode*/
- MM_CAMCORDER_AUTO_EXPOSURE_SPOT_2, /**< AE on, XXX mode*/
- MM_CAMCORDER_AUTO_EXPOSURE_CUSTOM_1, /**< AE on, XXX mode*/
- MM_CAMCORDER_AUTO_EXPOSURE_CUSTOM_2, /**< AE on, XXX mode*/
+ MM_CAMCORDER_AUTO_EXPOSURE_OFF = 0, /**< AE off*/
+ MM_CAMCORDER_AUTO_EXPOSURE_ALL, /**< AE default */
+ MM_CAMCORDER_AUTO_EXPOSURE_CENTER_1, /**< AE center mode*/
+ MM_CAMCORDER_AUTO_EXPOSURE_CENTER_2, /**< Unused */
+ MM_CAMCORDER_AUTO_EXPOSURE_CENTER_3, /**< Unused */
+ MM_CAMCORDER_AUTO_EXPOSURE_SPOT_1, /**< AE spot mode*/
+ MM_CAMCORDER_AUTO_EXPOSURE_SPOT_2, /**< Unused */
+ MM_CAMCORDER_AUTO_EXPOSURE_CUSTOM_1, /**< AE manual mode */
+ MM_CAMCORDER_AUTO_EXPOSURE_CUSTOM_2, /**< Unused */
+ MM_CAMCORDER_AUTO_EXPOSURE_SHUTTER_PRIORITY, /**< AE shutter priority mode */
+ MM_CAMCORDER_AUTO_EXPOSURE_APERTURE_PRIORITY /**< AE aperture priority mode */
};
* Enumerations for camcorder attribute ID.
*/
typedef enum {
- MM_CAM_MODE, /* 0 */
+ MM_CAM_MODE, /* 0 */
MM_CAM_AUDIO_DEVICE,
MM_CAM_CAMERA_DEVICE_COUNT,
MM_CAM_AUDIO_ENCODER,
MM_CAM_CAMERA_DEVICE_NAME,
MM_CAM_AUDIO_SAMPLERATE,
MM_CAM_AUDIO_FORMAT,
- MM_CAM_AUDIO_CHANNEL, /* 10 */
+ MM_CAM_AUDIO_CHANNEL, /* 10 */
MM_CAM_AUDIO_VOLUME,
MM_CAM_AUDIO_INPUT_ROUTE,
MM_CAM_FILTER_SCENE_MODE,
MM_CAM_FILTER_COLOR_TONE,
MM_CAM_FILTER_SATURATION,
MM_CAM_FILTER_HUE,
- MM_CAM_FILTER_SHARPNESS, /* 20 */
+ MM_CAM_FILTER_SHARPNESS, /* 20 */
MM_CAM_CAMERA_FORMAT,
MM_CAM_CAMERA_RECORDING_MOTION_RATE,
MM_CAM_CAMERA_FPS,
MM_CAM_CAMERA_OPTICAL_ZOOM,
MM_CAM_CAMERA_FOCUS_MODE,
MM_CAM_CAMERA_AF_SCAN_RANGE,
- MM_CAM_CAMERA_EXPOSURE_MODE, /* 30 */
+ MM_CAM_CAMERA_EXPOSURE_MODE, /* 30 */
MM_CAM_CAMERA_EXPOSURE_VALUE,
MM_CAM_CAMERA_F_NUMBER,
MM_CAM_CAMERA_SHUTTER_SPEED,
MM_CAM_CAMERA_FPS_AUTO,
MM_CAM_CAMERA_DELAY_ATTR_SETTING,
MM_CAM_AUDIO_ENCODER_BITRATE,
- MM_CAM_VIDEO_ENCODER_BITRATE, /* 40 */
+ MM_CAM_VIDEO_ENCODER_BITRATE, /* 40 */
MM_CAM_IMAGE_ENCODER_QUALITY,
MM_CAM_CAPTURE_FORMAT,
MM_CAM_CAPTURE_WIDTH,
MM_CAM_CAPTURE_BREAK_CONTINUOUS_SHOT,
MM_CAM_DISPLAY_HANDLE,
MM_CAM_DISPLAY_DEVICE,
- MM_CAM_DISPLAY_SURFACE, /* 50 */
+ MM_CAM_DISPLAY_SURFACE, /* 50 */
MM_CAM_DISPLAY_RECT_X,
MM_CAM_DISPLAY_RECT_Y,
MM_CAM_DISPLAY_RECT_WIDTH,
MM_CAM_DISPLAY_SOURCE_WIDTH,
MM_CAM_DISPLAY_SOURCE_HEIGHT,
MM_CAM_DISPLAY_ROTATION,
- MM_CAM_DISPLAY_VISIBLE, /* 60 */
+ MM_CAM_DISPLAY_VISIBLE, /* 60 */
MM_CAM_DISPLAY_SCALE,
MM_CAM_DISPLAY_GEOMETRY_METHOD,
MM_CAM_TARGET_FILENAME,
MM_CAM_TAG_IMAGE_DESCRIPTION,
MM_CAM_TAG_ORIENTATION,
MM_CAM_TAG_SOFTWARE,
- MM_CAM_TAG_LATITUDE, /* 70 */
+ MM_CAM_TAG_LATITUDE, /* 70 */
MM_CAM_TAG_LONGITUDE,
MM_CAM_TAG_ALTITUDE,
MM_CAM_STROBE_CONTROL,
MM_CAM_DETECT_NUMBER,
MM_CAM_DETECT_FOCUS_SELECT,
MM_CAM_DETECT_SELECT_NUMBER,
- MM_CAM_DETECT_STATUS, /* 80 */
+ MM_CAM_DETECT_STATUS, /* 80 */
MM_CAM_CAPTURE_ZERO_SYSTEMLAG,
MM_CAM_CAMERA_AF_TOUCH_X,
MM_CAM_CAMERA_AF_TOUCH_Y,
MM_CAM_RECOMMEND_PREVIEW_FORMAT_FOR_CAPTURE,
MM_CAM_RECOMMEND_PREVIEW_FORMAT_FOR_RECORDING,
MM_CAM_TAG_GPS_ENABLE,
- MM_CAM_TAG_GPS_TIME_STAMP, /* 90 */
+ MM_CAM_TAG_GPS_TIME_STAMP, /* 90 */
MM_CAM_TAG_GPS_DATE_STAMP,
MM_CAM_TAG_GPS_PROCESSING_METHOD,
MM_CAM_CAMERA_ROTATION,
MM_CAM_CAMERA_FLIP,
MM_CAM_CAMERA_HDR_CAPTURE,
MM_CAM_DISPLAY_MODE,
- MM_CAM_AUDIO_DISABLE, /* 100 */
+ MM_CAM_AUDIO_DISABLE, /* 100 */
MM_CAM_RECOMMEND_CAMERA_WIDTH,
MM_CAM_RECOMMEND_CAMERA_HEIGHT,
MM_CAM_CAPTURED_EXIF_RAW_DATA,
MM_CAM_DISPLAY_FLIP,
MM_CAM_CAMERA_VIDEO_STABILIZATION,
MM_CAM_TAG_VIDEO_ORIENTATION,
- MM_CAM_CAMERA_PAN_MECHA, /* 110 */
+ MM_CAM_CAMERA_PAN_MECHA, /* 110 */
MM_CAM_CAMERA_PAN_ELEC,
MM_CAM_CAMERA_TILT_MECHA,
MM_CAM_CAMERA_TILT_ELEC,
MM_CAM_SUPPORT_ZSL_CAPTURE,
MM_CAM_SUPPORT_ZERO_COPY_FORMAT,
MM_CAM_SUPPORT_MEDIA_PACKET_PREVIEW_CB,
- MM_CAM_ENCODED_PREVIEW_BITRATE, /* 120 */
+ MM_CAM_ENCODED_PREVIEW_BITRATE, /* 120 */
MM_CAM_ENCODED_PREVIEW_GOP_INTERVAL,
MM_CAM_RECORDER_TAG_ENABLE,
MM_CAM_DISPLAY_SOCKET_PATH,
MM_CAM_SOUND_STREAM_TYPE,
MM_CAM_DISPLAY_REUSE_HINT,
MM_CAM_DISPLAY_REUSE_ELEMENT,
- MM_CAM_GDBUS_CONNECTION, /* 130 */
+ MM_CAM_GDBUS_CONNECTION, /* 130 */
MM_CAM_AUDIO_REPLAY_GAIN_ENABLE,
MM_CAM_AUDIO_REPLAY_GAIN_REFERENCE_LEVEL,
MM_CAM_SUPPORT_USER_BUFFER,
MM_CAM_VIDEOSRC_ELEMENT_NAME,
MM_CAM_AUDIOSRC_ELEMENT_NAME,
MM_CAM_EXTRA_PREVIEW_ENABLE,
- MM_CAM_CAMERA_FOCUS_LEVEL, /* 140 */
+ MM_CAM_CAMERA_FOCUS_LEVEL, /* 140 */
MM_CAM_SUPPORT_EXTRA_PREVIEW,
MM_CAM_REQUEST_CODEC_CONFIG,
+ MM_CAM_FILTER_WB_TEMPERATURE,
+ MM_CAM_FILTER_WB_TEMPERATURE_STEP,
+ MM_CAM_CAMERA_GAIN,
+ MM_CAM_CAMERA_GAIN_STEP,
MM_CAM_ATTRIBUTE_NUM
} MMCamcorderAttrsID;
* Total Numbers of Attribute values.
* If you increase any enum of attribute values, you also have to increase this.
*/
-#define MM_CAMCORDER_MODE_NUM 3 /**< Number of mode type */
-#define MM_CAMCORDER_COLOR_TONE_NUM 30 /**< Number of color-tone modes */
-#define MM_CAMCORDER_WHITE_BALANCE_NUM 10 /**< Number of WhiteBalance modes*/
-#define MM_CAMCORDER_SCENE_MODE_NUM 16 /**< Number of program-modes */
-#define MM_CAMCORDER_FOCUS_MODE_NUM 6 /**< Number of focus mode*/
-#define MM_CAMCORDER_AUTO_FOCUS_NUM 5 /**< Total count of auto focus type*/
-#define MM_CAMCORDER_FOCUS_STATE_NUM 4 /**< Number of focus state */
-#define MM_CAMCORDER_ISO_NUM 10 /**< Number of ISO */
-#define MM_CAMCORDER_AUTO_EXPOSURE_NUM 9 /**< Number of Auto exposure type */
-#define MM_CAMCORDER_WDR_NUM 3 /**< Number of wide dynamic range */
-#define MM_CAMCORDER_FLIP_NUM 4 /**< Number of Flip mode */
-#define MM_CAMCORDER_ROTATION_NUM 4 /**< Number of Rotation mode */
-#define MM_CAMCORDER_AHS_NUM 4 /**< Number of anti-handshake */
-#define MM_CAMCORDER_VIDEO_STABILIZATION_NUM 2 /**< Number of video stabilization */
-#define MM_CAMCORDER_HDR_CAPTURE_NUM 3 /**< Number of HDR capture mode */
-#define MM_CAMCORDER_GEOMETRY_METHOD_NUM 5 /**< Number of geometry method */
-#define MM_CAMCORDER_TAG_ORT_NUM 8 /**< Number of tag orientation */
-#define MM_CAMCORDER_STROBE_MODE_NUM 8 /**< Number of strobe mode type */
-#define MM_CAMCORDER_STROBE_CONTROL_NUM 3 /**< Number of strobe control type */
-#define MM_CAMCORDER_DETECT_MODE_NUM 2 /**< Number of detect mode type */
+#define MM_CAMCORDER_MODE_NUM 3 /**< Number of mode type */
+#define MM_CAMCORDER_COLOR_TONE_NUM 30 /**< Number of color-tone modes */
+#define MM_CAMCORDER_WHITE_BALANCE_NUM 10 /**< Number of WhiteBalance modes*/
+#define MM_CAMCORDER_SCENE_MODE_NUM 16 /**< Number of program-modes */
+#define MM_CAMCORDER_FOCUS_MODE_NUM 6 /**< Number of focus mode*/
+#define MM_CAMCORDER_AUTO_FOCUS_NUM 5 /**< Total count of auto focus type*/
+#define MM_CAMCORDER_FOCUS_STATE_NUM 4 /**< Number of focus state */
+#define MM_CAMCORDER_ISO_NUM 10 /**< Number of ISO */
+#define MM_CAMCORDER_AUTO_EXPOSURE_NUM 11 /**< Number of Auto exposure type */
+#define MM_CAMCORDER_WDR_NUM 3 /**< Number of wide dynamic range */
+#define MM_CAMCORDER_FLIP_NUM 4 /**< Number of Flip mode */
+#define MM_CAMCORDER_ROTATION_NUM 4 /**< Number of Rotation mode */
+#define MM_CAMCORDER_AHS_NUM 4 /**< Number of anti-handshake */
+#define MM_CAMCORDER_VIDEO_STABILIZATION_NUM 2 /**< Number of video stabilization */
+#define MM_CAMCORDER_HDR_CAPTURE_NUM 3 /**< Number of HDR capture mode */
+#define MM_CAMCORDER_GEOMETRY_METHOD_NUM 5 /**< Number of geometry method */
+#define MM_CAMCORDER_TAG_ORT_NUM 8 /**< Number of tag orientation */
+#define MM_CAMCORDER_STROBE_MODE_NUM 8 /**< Number of strobe mode type */
+#define MM_CAMCORDER_STROBE_CONTROL_NUM 3 /**< Number of strobe control type */
+#define MM_CAMCORDER_DETECT_MODE_NUM 2 /**< Number of detect mode type */
/*=======================================================================================
#define _MMCAMCORDER_SENSOR_ENUM_NONE -255
/* camera information related */
-#define CAMINFO_CONVERT_NUM 47
+#define CAMINFO_CONVERT_NUM 49
/*=======================================================================================
{.int_min = FALSE},
{.int_max = TRUE},
_mmcamcorder_commit_request_codec_config,
+ },
+ {
+ MM_CAM_FILTER_WB_TEMPERATURE,
+ "filter-wb-temperature",
+ MM_ATTRS_TYPE_INT,
+ MM_ATTRS_FLAG_RW,
+ {(void*)0},
+ MM_ATTRS_VALID_TYPE_INT_RANGE,
+ {.int_min = 0},
+ {.int_max = -1},
+ _mmcamcorder_commit_filter,
+ },
+ {
+ MM_CAM_FILTER_WB_TEMPERATURE_STEP,
+ "filter-wb-temperature-step",
+ MM_ATTRS_TYPE_INT,
+ MM_ATTRS_FLAG_RW,
+ {(void*)1},
+ MM_ATTRS_VALID_TYPE_INT_RANGE,
+ {.int_min = 1},
+ {.int_max = _MMCAMCORDER_MAX_INT},
+ NULL,
+ },
+ {
+ MM_CAM_CAMERA_GAIN,
+ "camera-gain",
+ MM_ATTRS_TYPE_INT,
+ MM_ATTRS_FLAG_RW,
+ {(void*)0},
+ MM_ATTRS_VALID_TYPE_INT_RANGE,
+ {.int_min = 0},
+ {.int_max = -1},
+ _mmcamcorder_commit_camera_capture_mode,
+ },
+ {
+ MM_CAM_CAMERA_GAIN_STEP,
+ "camera-gain-step",
+ MM_ATTRS_TYPE_INT,
+ MM_ATTRS_FLAG_RW,
+ {(void*)1},
+ MM_ATTRS_VALID_TYPE_INT_RANGE,
+ {.int_min = 1},
+ {.int_max = _MMCAMCORDER_MAX_INT},
+ NULL,
}
};
ivalue = value->value.i_val;
- if (attr_idx == MM_CAM_CAMERA_F_NUMBER) {
+ switch (attr_idx) {
+ case MM_CAM_CAMERA_F_NUMBER:
exposure_type = GST_CAMERA_CONTROL_F_NUMBER;
mslVal1 = newVal1 = MM_CAMCORDER_GET_NUMERATOR(ivalue);
mslVal2 = newVal2 = MM_CAMCORDER_GET_DENOMINATOR(ivalue);
- } else if (attr_idx == MM_CAM_CAMERA_SHUTTER_SPEED) {
+ break;
+ case MM_CAM_CAMERA_SHUTTER_SPEED:
exposure_type = GST_CAMERA_CONTROL_SHUTTER_SPEED;
mslVal1 = newVal1 = MM_CAMCORDER_GET_NUMERATOR(ivalue);
mslVal2 = newVal2 = MM_CAMCORDER_GET_DENOMINATOR(ivalue);
- } else if (attr_idx == MM_CAM_CAMERA_ISO) {
+ break;
+ case MM_CAM_CAMERA_ISO:
exposure_type = GST_CAMERA_CONTROL_ISO;
mslVal1 = ivalue;
newVal1 = _mmcamcorder_convert_msl_to_sensor(handle, attr_idx, mslVal1);
check_scene_mode = TRUE;
- } else if (attr_idx == MM_CAM_CAMERA_EXPOSURE_MODE) {
+ break;
+ case MM_CAM_CAMERA_EXPOSURE_MODE:
exposure_type = GST_CAMERA_CONTROL_EXPOSURE_MODE;
mslVal1 = ivalue;
newVal1 = _mmcamcorder_convert_msl_to_sensor(handle, attr_idx, mslVal1);
check_scene_mode = TRUE;
- } else if (attr_idx == MM_CAM_CAMERA_EXPOSURE_VALUE) {
+ break;
+ case MM_CAM_CAMERA_EXPOSURE_VALUE:
exposure_type = GST_CAMERA_CONTROL_EXPOSURE_VALUE;
mslVal1 = newVal1 = ivalue;
+ break;
+ case MM_CAM_CAMERA_GAIN:
+ exposure_type = GST_CAMERA_CONTROL_GAIN;
+ mslVal1 = newVal1 = ivalue;
+ break;
+ default:
+ MMCAM_LOG_ERROR("unknown attr idx[%d]", attr_idx);
+ return FALSE;
}
if (check_scene_mode) {
control_label = "white balance";
check_scene_mode = TRUE;
break;
+ case MM_CAM_FILTER_WB_TEMPERATURE:
+ control_label = "white balance temperature";
+ check_scene_mode = TRUE;
+ break;
case MM_CAM_FILTER_COLOR_TONE:
control_label = "color tone";
break;
/* [Effect] matching table */
static conf_info_table conf_ctrl_effect_table[] = {
- { "Brightness", CONFIGURE_VALUE_INT_RANGE, {NULL} },
- { "BrightnessStepDenominator", CONFIGURE_VALUE_INT, {.value_int = 2} },
- { "Contrast", CONFIGURE_VALUE_INT_RANGE, {NULL} },
- { "Saturation", CONFIGURE_VALUE_INT_RANGE, {NULL} },
- { "Sharpness", CONFIGURE_VALUE_INT_RANGE, {NULL} },
- { "Hue", CONFIGURE_VALUE_INT_RANGE, {NULL} },
- { "WhiteBalance", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
- { "ColorTone", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
- { "Flip", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
- { "Rotation", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
- { "WDR", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
- { "PartColorMode", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
- { "PartColor", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
+ { "Brightness", CONFIGURE_VALUE_INT_RANGE, {NULL} },
+ { "BrightnessStepDenominator", CONFIGURE_VALUE_INT, {.value_int = 2} },
+ { "Contrast", CONFIGURE_VALUE_INT_RANGE, {NULL} },
+ { "Saturation", CONFIGURE_VALUE_INT_RANGE, {NULL} },
+ { "Sharpness", CONFIGURE_VALUE_INT_RANGE, {NULL} },
+ { "Hue", CONFIGURE_VALUE_INT_RANGE, {NULL} },
+ { "WhiteBalance", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
+ { "ColorTone", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
+ { "Flip", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
+ { "Rotation", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
+ { "WDR", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
+ { "PartColorMode", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
+ { "PartColor", CONFIGURE_VALUE_INT_ARRAY, {NULL} },
+ { "WhiteBalanceTemperature", CONFIGURE_VALUE_INT_RANGE, {NULL} },
+ { "WhiteBalanceTemperatureStep", CONFIGURE_VALUE_INT, {.value_int = 1} }
};
/* [Photograph] matching table */
{ "PanElec", CONFIGURE_VALUE_INT_RANGE, {NULL} },
{ "TiltMecha", CONFIGURE_VALUE_INT_RANGE, {NULL} },
{ "TiltElec", CONFIGURE_VALUE_INT_RANGE, {NULL} },
+ { "Gain", CONFIGURE_VALUE_INT_RANGE, {NULL} },
+ { "GainStep", CONFIGURE_VALUE_INT, {.value_int = 1} }
};
/* [Capture] matching table */
int play_capture_sound = TRUE;
int camera_default_flip = MM_FLIP_NONE;
int camera_facing_direction = MM_CAMCORDER_CAMERA_FACING_DIRECTION_REAR;
+ int wb_temp_step = 1;
+ int gain_step = 1;
char *err_attr_name = NULL;
char conf_file_name[__MMCAMCORDER_CONF_FILENAME_LENGTH] = {'\0',};
const char *platform_privilege_camera = NULL;
"SupportZSL",
&hcamcorder->support_zsl_capture);
+ _mmcamcorder_conf_get_value_int((MMHandleType)hcamcorder, hcamcorder->conf_ctrl,
+ CONFIGURE_CATEGORY_CTRL_EFFECT,
+ "WhiteBalanceTemperatureStep",
+ &wb_temp_step);
+
+ _mmcamcorder_conf_get_value_int((MMHandleType)hcamcorder, hcamcorder->conf_ctrl,
+ CONFIGURE_CATEGORY_CTRL_PHOTOGRAPH,
+ "GainStep",
+ &gain_step);
+
MMCAM_LOG_INFO("Recommend format[capture:%d, recording:%d]", rcmd_fmt_capture, rcmd_fmt_recording);
MMCAM_LOG_INFO("Recommend display rotation[%d]", rcmd_dpy_rotation);
MMCAM_LOG_INFO("Camera facing direction[%d]", camera_facing_direction);
MMCAM_LOG_INFO("Brightness step denominator[%d]", hcamcorder->brightness_step_denominator);
MMCAM_LOG_INFO("Support ZSL capture[%d]", hcamcorder->support_zsl_capture);
+ MMCAM_LOG_INFO("Step: wb_temp[%d], gain[%d]", wb_temp_step, gain_step);
_mmcamcorder_conf_get_value_int((MMHandleType)hcamcorder, hcamcorder->conf_ctrl,
CONFIGURE_CATEGORY_CTRL_CAMERA,
MMCAM_PLATFORM_PRIVILEGE_CAMERA, platform_privilege_camera,
platform_privilege_camera ? strlen(platform_privilege_camera) : 0,
MMCAM_ENCODED_PREVIEW_BITRATE, hcamcorder->default_encoded_preview_bitrate,
+ MMCAM_FILTER_WB_TEMPERATURE_STEP, wb_temp_step,
+ MMCAM_CAMERA_GAIN_STEP, gain_step,
NULL);
if (ret != MM_ERROR_NONE) {
MMCAM_LOG_ERROR("[0x%x] Set %s FAILED.", ret, err_attr_name ? err_attr_name : "[UNKNOWN]");
"FocusLevel",
MM_CAMCONVERT_TYPE_INT_RANGE,
NULL,
+ },
+ {
+ CONFIGURE_TYPE_CTRL,
+ CONFIGURE_CATEGORY_CTRL_EFFECT,
+ MM_CAM_FILTER_WB_TEMPERATURE,
+ MM_CAMCORDER_ATTR_NONE,
+ "WhiteBalanceTemperature",
+ MM_CAMCONVERT_TYPE_INT_RANGE,
+ NULL,
+ },
+ {
+ CONFIGURE_TYPE_CTRL,
+ CONFIGURE_CATEGORY_CTRL_PHOTOGRAPH,
+ MM_CAM_CAMERA_GAIN,
+ MM_CAMCORDER_ATTR_NONE,
+ "Gain",
+ MM_CAMCONVERT_TYPE_INT_RANGE,
+ NULL,
}
};