📄 cam_msg_handler.c
字号:
}
else
{
result = MED_RES_ERROR;
}
med_free_ext_mem((void **)(&cam_context_p->extmem_start_address));
cam_set_result(result);
CAM_ENTER_STATE(CAM_READY);
CAM_SET_EVENT(CAM_EVT_CAPTURE);
}
}
else
{
cam_set_result(result);
#ifdef __MTK_TARGET__
exit_ext_camera_preview();
#endif
CAM_ENTER_STATE(CAM_READY);
CAM_SET_EVENT(CAM_EVT_CAPTURE);
}
}
else
{
cam_set_result(MED_RES_INVALID_FORMAT);
CAM_SET_EVENT(CAM_EVT_CAPTURE);
}
}
else
{
cam_set_result(MED_RES_BUSY);
CAM_SET_EVENT(CAM_EVT_CAPTURE);
ASSERT(0);
}
}
/*****************************************************************************
* FUNCTION
* cam_set_zoom_factor
* DESCRIPTION
* This function is to set the camera zoom factor.
* PARAMETERS
* value [IN]
* RETURNS
* void
*****************************************************************************/
kal_int16 cam_set_zoom_factor(kal_int16 value)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
#ifdef __MTK_TARGET__
ext_camera_set_parameter(cam_command_map[CAM_PARAM_ZOOM_FACTOR], value);
#endif
return MED_RES_OK;
}
/*****************************************************************************
* FUNCTION
* cam_set_contrast
* DESCRIPTION
* This function is to set the contrast.
* PARAMETERS
* value [IN]
* RETURNS
* void
*****************************************************************************/
kal_int16 cam_set_contrast(kal_int16 value)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
return MED_RES_ERROR;
}
/*****************************************************************************
* FUNCTION
* cam_set_brightness
* DESCRIPTION
* This function is to set the brightness.
* PARAMETERS
* value [IN]
* RETURNS
* void
*****************************************************************************/
kal_int16 cam_set_brightness(kal_int16 value)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
return MED_RES_ERROR;
}
/*****************************************************************************
* FUNCTION
* cam_set_hue
* DESCRIPTION
* This function is to set the hue.
* PARAMETERS
* value [IN]
* RETURNS
* void
*****************************************************************************/
kal_int16 cam_set_hue(kal_int16 value)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
return MED_RES_ERROR;
}
/*****************************************************************************
* FUNCTION
* cam_set_gamma
* DESCRIPTION
* This function is to set the gamma value.
* PARAMETERS
* value [IN]
* RETURNS
* void
*****************************************************************************/
kal_int16 cam_set_gamma(kal_int16 value)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
return MED_RES_ERROR;
}
/*****************************************************************************
* FUNCTION
* cam_set_wb
* DESCRIPTION
* This function is to set the white balance value.
* PARAMETERS
* value [IN]
* RETURNS
* void
*****************************************************************************/
kal_int16 cam_set_wb(kal_int16 value)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
if (value >= 0 && value < CAM_NO_OF_WB)
{
#ifdef __MTK_TARGET__
ext_camera_set_parameter(cam_command_map[CAM_PARAM_WB], cam_wb_param_map[value]);
#endif
return MED_RES_OK;
}
else
{
return MED_RES_ERROR;
}
}
/*****************************************************************************
* FUNCTION
* cam_set_exposure
* DESCRIPTION
* This function is to set the exposure compensation value.
* PARAMETERS
* value [IN]
* RETURNS
* void
*****************************************************************************/
kal_int16 cam_set_exposure(kal_int16 value)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
if (value >= 0 && value < CAM_NO_OF_EV)
{
#ifdef __MTK_TARGET__
ext_camera_set_parameter(cam_command_map[CAM_PARAM_EXPOSURE], cam_ev_param_map[value]);
#endif
return MED_RES_OK;
}
else
{
return MED_RES_ERROR;
}
}
/*****************************************************************************
* FUNCTION
* cam_set_effect
* DESCRIPTION
* This function is to set the image effect.
* PARAMETERS
* value [IN]
* RETURNS
* void
*****************************************************************************/
kal_int16 cam_set_effect(kal_int16 value)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
if (value >= 0 && value < CAM_NO_OF_EFFECT_ENC)
{
ext_camera_set_parameter(cam_command_map[CAM_PARAM_EFFECT], cam_effect_param_map[value]);
return MED_RES_OK;
}
else
{
return MED_RES_ERROR;
}
}
/*****************************************************************************
* FUNCTION
* cam_set_banding
* DESCRIPTION
* This function is to set the banding.
* PARAMETERS
* value [IN]
* RETURNS
* void
*****************************************************************************/
kal_int16 cam_set_banding(kal_int16 value)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
if (value >= 0 && value < CAM_NO_OF_BANDING)
{
#ifdef __MTK_TARGET__
ext_camera_set_parameter(cam_command_map[CAM_PARAM_BANDING], cam_effect_param_map[value]);
#endif
return MED_RES_OK;
}
else
{
return MED_RES_ERROR;
}
}
/*****************************************************************************
* FUNCTION
* cam_set_night_mode
* DESCRIPTION
* This function is to set the night mode.
* PARAMETERS
* value [IN]
* RETURNS
* void
*****************************************************************************/
kal_int16 cam_set_night_mode(kal_int16 value)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
#ifdef __MTK_TARGET__
ext_camera_set_parameter(cam_command_map[CAM_PARAM_NIGHT_MODE], (kal_uint8) value);
#endif
return MED_RES_OK;
}
/*****************************************************************************
* FUNCTION
* cam_set_param_req_hdlr
* DESCRIPTION
* This function is to handle camera set parameter request.
* PARAMETERS
* ilm_ptr [?]
* RETURNS
* void
*****************************************************************************/
void cam_set_param_req_hdlr(ilm_struct *ilm_ptr)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
media_cam_set_param_req_struct *req_p;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
cam_context_p->src_mod = ilm_ptr->src_mod_id;
req_p = (media_cam_set_param_req_struct*) ilm_ptr->local_para_ptr;
switch (req_p->param_id)
{
case CAM_PARAM_ZOOM_FACTOR:
cam_set_zoom_factor(req_p->value);
break;
case CAM_PARAM_CONTRAST:
cam_set_contrast(req_p->value);
break;
case CAM_PARAM_BRIGHTNESS:
cam_set_brightness(req_p->value);
break;
case CAM_PARAM_HUE:
cam_set_hue(req_p->value);
break;
case CAM_PARAM_GAMMA:
cam_set_gamma(req_p->value);
break;
case CAM_PARAM_WB:
cam_set_wb(req_p->value);
break;
case CAM_PARAM_EXPOSURE:
cam_set_exposure(req_p->value);
break;
case CAM_PARAM_EFFECT:
cam_set_effect(req_p->value);
break;
case CAM_PARAM_BANDING:
cam_set_banding(req_p->value);
break;
case CAM_PARAM_NIGHT_MODE:
cam_set_night_mode(req_p->value);
break;
case CAM_PARAM_FLASH_MODE:
cam_set_flash(req_p->value);
break;
default:
cam_set_exposure(req_p->value);
break;
}
CAM_SET_EVENT(CAM_EVT_SET_PARAM
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -