}
break;
case GST_CAMERA_CONTROL_ISO:
- ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_ISO, (void **)value1);
+ ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_ISO, (void **)&value1);
break;
case GST_CAMERA_CONTROL_PROGRAM_MODE:
- ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_SCENE_MODE, (void **)value1);
+ ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_SCENE_MODE, (void **)&value1);
break;
case GST_CAMERA_CONTROL_EXPOSURE_MODE:
- ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_EXPOSURE_MODE, (void **)value1);
+ ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_EXPOSURE_MODE, (void **)&value1);
break;
case GST_CAMERA_CONTROL_EXPOSURE_VALUE:
g_return_val_if_fail(value2, FALSE);
switch (type) {
case GST_CAMERA_CONTROL_STROBE_MODE:
- ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_FLASH_MODE, (void **)value);
+ ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_FLASH_MODE, (void **)&value);
break;
case GST_CAMERA_CONTROL_STROBE_BRIGHTNESS:
ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_FLASH_BRIGHTNESS, (void **)&value);
/* TODO : detection number, focus select, select number, detect status */
switch (type) {
case GST_CAMERA_CONTROL_FACE_DETECT_MODE:
- ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_FACE_DETECTION, (void **)value);
+ ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_FACE_DETECTION, (void **)&value);
break;
case GST_CAMERA_CONTROL_FACE_DETECT_NUMBER:
break;
switch (type) {
case GST_CAMERA_CONTROL_DIGITAL_ZOOM:
- ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_DIGITAL_ZOOM, (void **)value);
+ ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_DIGITAL_ZOOM, (void **)&value);
break;
case GST_CAMERA_CONTROL_OPTICAL_ZOOM:
- ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_OPTICAL_ZOOM, (void **)value);
+ ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_OPTICAL_ZOOM, (void **)&value);
break;
default:
gst_tizencamerasrc_debug("Not supported type.");
gst_tizencamerasrc_debug("get focus");
- ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_FOCUS_MODE, (void **)focus_mode);
- ret |= hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_FOCUS_RANGE, (void **)focus_range);
+ ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_FOCUS_MODE, (void **)&focus_mode);
+ ret |= hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_FOCUS_RANGE, (void **)&focus_range);
if (ret != CAMERA_ERROR_NONE) {
gst_tizencamerasrc_debug("Failed to get AF mode.");
return FALSE;
gboolean gst_tizencamerasrc_control_set_focus_level(GstTizenCameraSrc *camerasrc, gint focus_level)
{
- /* TODO : */
+ int ret = CAMERA_ERROR_NONE;
- gst_tizencamerasrc_debug("Not support");
- return FALSE;
+ g_return_val_if_fail(camerasrc, FALSE);
+
+ gst_tizencamerasrc_debug("set focus level[%d]", focus_level);
+
+ ret = hal_camera_set_command(camerasrc->hal_handle, CAMERA_COMMAND_FOCUS_LEVEL, (void *)&focus_level);
+ if (ret != CAMERA_ERROR_NONE) {
+ GST_ERROR_OBJECT(camerasrc, "set focus level failed[0x%x]", ret);
+ return FALSE;
+ }
+
+ return TRUE;
}
gboolean gst_tizencamerasrc_control_get_focus_level(GstTizenCameraSrc *camerasrc, gint *focus_level)
{
- /* TODO : */
+ int ret = CAMERA_ERROR_NONE;
- gst_tizencamerasrc_debug("Not support");
- return FALSE;
+ g_return_val_if_fail(camerasrc, FALSE);
+ g_return_val_if_fail(focus_level, FALSE);
+
+ ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_FOCUS_LEVEL, (void **)&focus_level);
+ if (ret != CAMERA_ERROR_NONE) {
+ GST_ERROR_OBJECT(camerasrc, "set focus level failed[0x%x]", ret);
+ return FALSE;
+ }
+
+ gst_tizencamerasrc_debug("get focus level[%d]", *focus_level);
+
+ return TRUE;
}
gboolean gst_tizencamerasrc_control_set_auto_focus_area(GstTizenCameraSrc *camerasrc, GstCameraControlRectType rect)
gst_tizencamerasrc_debug("get wdr");
- ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_WDR, (void **)value);
+ ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_WDR, (void **)&value);
if (ret != CAMERA_ERROR_NONE) {
gst_tizencamerasrc_debug("Failed to get wdr. err code[%x]", ret);
return FALSE;
gst_tizencamerasrc_debug("get ahs");
- ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_ANTI_SHAKE, (void **)value);
+ ret = hal_camera_get_command(camerasrc->hal_handle, CAMERA_COMMAND_ANTI_SHAKE, (void **)&value);
if (ret != CAMERA_ERROR_NONE) {
gst_tizencamerasrc_debug("Failed to get ahs. err code[%x]", ret);
return FALSE;