CAMERA_FACING_DIRECTION_FRONT, /**< Front */
} camera_facing_direction_e;
+/**
+ * @brief Enumeration for the current flash state.
+ * @since_tizen 3.0
+ */
+typedef enum {
+ CAMERA_FLASH_STATE_NOT_USED = 0, /**< Flash is not used now through camera API */
+ CAMERA_FLASH_STATE_USED, /**< Flash is used now through camera API */
+} camera_flash_state_e;
/**
* @brief The structure type of the image data.
CAMERA_ATTR_FLASH_MODE_PERMANENT, /**< Keep turned on until turning off */
} camera_attr_flash_mode_e;
+
/**
* @brief Enumeration to preview FPS.
* @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
int legacy_camera_get_state(camera_h camera, camera_state_e *state);
/**
+ * @brief Gets the device type of the camera.
+ *
+ * @since_tizen 3.0
+ * @param[in] camera The handle to the camera
+ * @param[out] device_type The current device type of the camera
+ * @return @c 0 on success, otherwise a negative error value
+ * @retval #CAMERA_ERROR_NONE Successful
+ * @retval #CAMERA_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #CAMERA_ERROR_PERMISSION_DENIED The access to the resources can not be granted
+ * @retval #CAMERA_ERROR_NOT_SUPPORTED The feature is not supported
+ */
+int legacy_camera_get_device_type(camera_h camera, camera_device_e *device_type);
+
+/**
* @brief Starts camera auto-focusing, asynchronously.
*
* @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
int legacy_camera_attr_disable_shutter_sound(camera_h camera, bool disable);
/**
+ * @brief Gets the bit rate of encoded preview.
+ * @since_tizen 3.0
+ * @param[in] camera The handle to the camera
+ * @param[out] bitrate The bit rate of encoded preview
+ * @return @c 0 on success, otherwise a negative error value
+ * @retval #CAMERA_ERROR_NONE Successful
+ * @retval #CAMERA_ERROR_INVALID_OPERATION Internal error
+ * @retval #CAMERA_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #CAMERA_ERROR_NOT_SUPPORTED The feature is not supported
+ */
+int legacy_camera_attr_get_encoded_preview_bitrate(camera_h camera, int *bitrate);
+
+/**
+ * @brief Sets the bit rate of encoded preview.
+ * @since_tizen 3.0
+ * @param[in] camera The handle to the camera
+ * @param[in] bitrate The bit rate of encoded preview
+ * @return @c 0 on success, otherwise a negative error value
+ * @retval #CAMERA_ERROR_NONE Successful
+ * @retval #CAMERA_ERROR_INVALID_OPERATION Internal error
+ * @retval #CAMERA_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #CAMERA_ERROR_NOT_SUPPORTED The feature is not supported
+ */
+int legacy_camera_attr_set_encoded_preview_bitrate(camera_h camera, int bitrate);
+
+/**
+ * @brief Gets the GOP(Group Of Pictures) interval of encoded preview.
+ * @since_tizen 3.0
+ * @param[in] camera The handle to the camera
+ * @param[out] interval the GOP interval of encoded preview (mili second)
+ * @return @c 0 on success, otherwise a negative error value
+ * @retval #CAMERA_ERROR_NONE Successful
+ * @retval #CAMERA_ERROR_INVALID_OPERATION Internal error
+ * @retval #CAMERA_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #CAMERA_ERROR_NOT_SUPPORTED The feature is not supported
+ */
+int legacy_camera_attr_get_encoded_preview_gop_interval(camera_h camera, int *interval);
+
+/**
+ * @brief Sets the GOP(Group Of Pictures) interval of encoded preview.
+ * @since_tizen 3.0
+ * @param[in] camera The handle to the camera
+ * @param[in] interval the GOP interval of encoded preview (mili second)
+ * @return @c 0 on success, otherwise a negative error value
+ * @retval #CAMERA_ERROR_NONE Successful
+ * @retval #CAMERA_ERROR_INVALID_OPERATION Internal error
+ * @retval #CAMERA_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #CAMERA_ERROR_NOT_SUPPORTED The feature is not supported
+ */
+int legacy_camera_attr_set_encoded_preview_gop_interval(camera_h camera, int interval);
+
+
+/**
* @}
*/
#ifdef __cplusplus
bool on_continuous_focusing;
int cached_focus_mode;
media_format_h pkt_fmt;
+ camera_device_e device_type;
GList *cb_data_list;
GMutex idle_cb_lock;
handle->is_used_in_recorder = false;
handle->on_continuous_focusing = false;
handle->cached_focus_mode = -1;
+ handle->device_type = device;
g_mutex_init(&handle->idle_cb_lock);
return __convert_camera_error_code(__func__, ret);
}
-
int legacy_camera_start_face_detection(camera_h camera, camera_face_detected_cb callback, void *user_data)
{
if (camera == NULL) {
return CAMERA_ERROR_NONE;
}
+int legacy_camera_get_device_type(camera_h camera, camera_device_e *device_type)
+{
+ int ret = MM_ERROR_NONE;
+ camera_s *handle = (camera_s *)camera;
+
+ if (camera == NULL || device_type == NULL) {
+ LOGE("INVALID_PARAMETER(0x%08x)", CAMERA_ERROR_INVALID_PARAMETER);
+ return CAMERA_ERROR_INVALID_PARAMETER;
+ }
+
+ *device_type = handle->device_type;
+
+ return ret;
+}
int legacy_camera_start_focusing(camera_h camera, bool continuous)
{
return CAMERA_ERROR_NONE;
}
+
+
+int legacy_camera_attr_get_encoded_preview_bitrate(camera_h camera, int *bitrate)
+{
+ if (camera == NULL || bitrate == NULL) {
+ LOGE("INVALID_PARAMETER(0x%08x)", CAMERA_ERROR_INVALID_PARAMETER);
+ return CAMERA_ERROR_INVALID_PARAMETER;
+ }
+
+ int ret = MM_ERROR_NONE;
+ camera_s *handle = (camera_s *)camera;
+
+ ret = mm_camcorder_get_attributes(handle->mm_handle, NULL,
+ MMCAM_ENCODED_PREVIEW_BITRATE, bitrate,
+ NULL);
+
+ return __convert_camera_error_code(__func__, ret);
+}
+
+
+int legacy_camera_attr_set_encoded_preview_bitrate(camera_h camera, int bitrate)
+{
+ if (camera == NULL) {
+ LOGE("INVALID_PARAMETER(0x%08x)", CAMERA_ERROR_INVALID_PARAMETER);
+ return CAMERA_ERROR_INVALID_PARAMETER;
+ }
+
+ int ret = MM_ERROR_NONE;
+ camera_s *handle = (camera_s *)camera;
+
+ ret = mm_camcorder_set_attributes(handle->mm_handle, NULL,
+ MMCAM_ENCODED_PREVIEW_BITRATE, bitrate,
+ NULL);
+
+ return __convert_camera_error_code(__func__, ret);
+}
+
+
+int legacy_camera_attr_get_encoded_preview_gop_interval(camera_h camera, int *interval)
+{
+ if (camera == NULL || interval == NULL) {
+ LOGE("INVALID_PARAMETER(0x%08x)", CAMERA_ERROR_INVALID_PARAMETER);
+ return CAMERA_ERROR_INVALID_PARAMETER;
+ }
+
+ int ret = MM_ERROR_NONE;
+ camera_s *handle = (camera_s *)camera;
+
+ ret = mm_camcorder_get_attributes(handle->mm_handle, NULL,
+ MMCAM_ENCODED_PREVIEW_GOP_INTERVAL, interval,
+ NULL);
+
+ return __convert_camera_error_code(__func__, ret);
+}
+
+
+int legacy_camera_attr_set_encoded_preview_gop_interval(camera_h camera, int interval)
+{
+ if (camera == NULL) {
+ LOGE("INVALID_PARAMETER(0x%08x)", CAMERA_ERROR_INVALID_PARAMETER);
+ return CAMERA_ERROR_INVALID_PARAMETER;
+ }
+
+ int ret = MM_ERROR_NONE;
+ camera_s *handle = (camera_s *)camera;
+
+ ret = mm_camcorder_set_attributes(handle->mm_handle, NULL,
+ MMCAM_ENCODED_PREVIEW_GOP_INTERVAL, interval,
+ NULL);
+
+ return __convert_camera_error_code(__func__, ret);
+}
MUSE_CAMERA_API_GET_CAPTURE_FORMAT,
MUSE_CAMERA_API_GET_PREVIEW_FORMAT,
MUSE_CAMERA_API_GET_FACING_DIRECTION,
- MUSE_CAMERA_API_SET_PREVIEW_CB, //35
+ MUSE_CAMERA_API_GET_FLASH_STATE, //35
+ MUSE_CAMERA_API_SET_PREVIEW_CB,
MUSE_CAMERA_API_UNSET_PREVIEW_CB,
MUSE_CAMERA_API_SET_MEDIA_PACKET_PREVIEW_CB,
MUSE_CAMERA_API_UNSET_MEDIA_PACKET_PREVIEW_CB,
- MUSE_CAMERA_API_SET_STATE_CHANGED_CB,
- MUSE_CAMERA_API_UNSET_STATE_CHANGED_CB, //40
+ MUSE_CAMERA_API_SET_STATE_CHANGED_CB, //40
+ MUSE_CAMERA_API_UNSET_STATE_CHANGED_CB,
MUSE_CAMERA_API_SET_INTERRUPTED_CB,
MUSE_CAMERA_API_UNSET_INTERRUPTED_CB,
MUSE_CAMERA_API_SET_FOCUS_CHANGED_CB,
- MUSE_CAMERA_API_UNSET_FOCUS_CHANGED_CB,
- MUSE_CAMERA_API_SET_ERROR_CB, //45
+ MUSE_CAMERA_API_UNSET_FOCUS_CHANGED_CB, //45
+ MUSE_CAMERA_API_SET_ERROR_CB,
MUSE_CAMERA_API_UNSET_ERROR_CB,
MUSE_CAMERA_API_SET_FOREACH_SUPPORTED_PREVIEW_RESOLUTION,
MUSE_CAMERA_API_SET_FOREACH_SUPPORTED_CAPTURE_RESOLUTION,
- MUSE_CAMERA_API_SET_FOREACH_SUPPORTED_CAPTURE_FORMAT,
- MUSE_CAMERA_API_SET_FOREACH_SUPPORTED_PREVIEW_FORMAT, //50
+ MUSE_CAMERA_API_SET_FOREACH_SUPPORTED_CAPTURE_FORMAT, //50
+ MUSE_CAMERA_API_SET_FOREACH_SUPPORTED_PREVIEW_FORMAT,
MUSE_CAMERA_API_GET_RECOMMENDED_PREVIEW_RESOLUTION,
MUSE_CAMERA_API_ATTR_GET_LENS_ORIENTATION,
MUSE_CAMERA_API_ATTR_SET_THEATER_MODE,
- MUSE_CAMERA_API_ATTR_GET_THEATER_MODE,
- MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_THEATER_MODE, //55
+ MUSE_CAMERA_API_ATTR_GET_THEATER_MODE, //55
+ MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_THEATER_MODE,
MUSE_CAMERA_API_ATTR_SET_PREVIEW_FPS,
MUSE_CAMERA_API_ATTR_SET_IMAGE_QUALITY,
MUSE_CAMERA_API_ATTR_GET_PREVIEW_FPS,
- MUSE_CAMERA_API_ATTR_GET_IMAGE_QUALITY,
- MUSE_CAMERA_API_ATTR_SET_ZOOM, //60
+ MUSE_CAMERA_API_ATTR_GET_IMAGE_QUALITY, //60
+ MUSE_CAMERA_API_ATTR_SET_ZOOM,
MUSE_CAMERA_API_ATTR_SET_AF_MODE,
MUSE_CAMERA_API_ATTR_SET_AF_AREA,
MUSE_CAMERA_API_ATTR_CLEAR_AF_AREA,
- MUSE_CAMERA_API_ATTR_SET_EXPOSURE_MODE,
- MUSE_CAMERA_API_ATTR_SET_EXPOSURE, //65
+ MUSE_CAMERA_API_ATTR_SET_EXPOSURE_MODE, //65
+ MUSE_CAMERA_API_ATTR_SET_EXPOSURE,
MUSE_CAMERA_API_ATTR_SET_ISO,
MUSE_CAMERA_API_ATTR_SET_BRIGHTNESS,
MUSE_CAMERA_API_ATTR_SET_CONTRAST,
- MUSE_CAMERA_API_ATTR_SET_WHITEBALANCE,
- MUSE_CAMERA_API_ATTR_SET_EFFECT, //70
+ MUSE_CAMERA_API_ATTR_SET_WHITEBALANCE, //70
+ MUSE_CAMERA_API_ATTR_SET_EFFECT,
MUSE_CAMERA_API_ATTR_SET_SCENE_MODE,
MUSE_CAMERA_API_ATTR_ENABLE_TAG,
MUSE_CAMERA_API_ATTR_SET_TAG_IMAGE_DESCRIPTION,
- MUSE_CAMERA_API_ATTR_SET_TAG_ORIENTATION,
- MUSE_CAMERA_API_ATTR_SET_TAG_SOFTWARE, //75
+ MUSE_CAMERA_API_ATTR_SET_TAG_ORIENTATION, //75
+ MUSE_CAMERA_API_ATTR_SET_TAG_SOFTWARE,
MUSE_CAMERA_API_ATTR_SET_GEOTAG,
MUSE_CAMERA_API_ATTR_REMOVE_GEOTAG,
MUSE_CAMERA_API_ATTR_SET_FLASH_MODE,
- MUSE_CAMERA_API_ATTR_GET_ZOOM,
- MUSE_CAMERA_API_ATTR_GET_ZOOM_RANGE, //80
+ MUSE_CAMERA_API_ATTR_GET_ZOOM, //80
+ MUSE_CAMERA_API_ATTR_GET_ZOOM_RANGE,
MUSE_CAMERA_API_ATTR_GET_AF_MODE,
MUSE_CAMERA_API_ATTR_GET_EXPOSURE_MODE,
MUSE_CAMERA_API_ATTR_GET_EXPOSURE,
- MUSE_CAMERA_API_ATTR_GET_EXPOSURE_RANGE,
- MUSE_CAMERA_API_ATTR_GET_ISO, //85
+ MUSE_CAMERA_API_ATTR_GET_EXPOSURE_RANGE, //85
+ MUSE_CAMERA_API_ATTR_GET_ISO,
MUSE_CAMERA_API_ATTR_GET_BRIGHTNESS,
MUSE_CAMERA_API_ATTR_GET_BRIGHTNESS_RANGE,
MUSE_CAMERA_API_ATTR_GET_CONTRAST,
- MUSE_CAMERA_API_ATTR_GET_CONTRAST_RANGE,
- MUSE_CAMERA_API_ATTR_GET_WHITEBALANCE, //90
+ MUSE_CAMERA_API_ATTR_GET_CONTRAST_RANGE, //90
+ MUSE_CAMERA_API_ATTR_GET_WHITEBALANCE,
MUSE_CAMERA_API_ATTR_GET_EFFECT,
MUSE_CAMERA_API_ATTR_GET_SCENE_MODE,
MUSE_CAMERA_API_ATTR_IS_ENABLED_TAG,
- MUSE_CAMERA_API_ATTR_GET_TAG_IMAGE_DESCRIPTION,
- MUSE_CAMERA_API_ATTR_GET_TAG_ORIENTATION, //95
+ MUSE_CAMERA_API_ATTR_GET_TAG_IMAGE_DESCRIPTION, //95
+ MUSE_CAMERA_API_ATTR_GET_TAG_ORIENTATION,
MUSE_CAMERA_API_ATTR_GET_TAG_SOFTWARE,
MUSE_CAMERA_API_ATTR_GET_GEOTAG,
MUSE_CAMERA_API_ATTR_GET_FLASH_MODE,
- MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_AF_MODE,
- MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_EXPOSURE_MODE, //100
+ MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_AF_MODE, //100
+ MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_EXPOSURE_MODE,
MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_ISO,
MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_WHITEBALANCE,
MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_EFFECT,
- MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_SCENE_MODE,
- MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_FLASH_MODE, //105
+ MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_SCENE_MODE, //105
+ MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_FLASH_MODE,
MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_FPS,
MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_FPS_BY_RESOLUTION,
MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_STREAM_FLIP,
- MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_STREAM_ROTATION,
- MUSE_CAMERA_API_ATTR_SET_STREAM_ROTATION, //110
+ MUSE_CAMERA_API_ATTR_FOREACH_SUPPORTED_STREAM_ROTATION, //110
+ MUSE_CAMERA_API_ATTR_SET_STREAM_ROTATION,
MUSE_CAMERA_API_ATTR_GET_STREAM_ROTATION,
MUSE_CAMERA_API_ATTR_SET_STREAM_FLIP,
MUSE_CAMERA_API_ATTR_GET_STREAM_FLIP,
- MUSE_CAMERA_API_ATTR_SET_HDR_MODE,
- MUSE_CAMERA_API_ATTR_GET_HDR_MODE, //115
+ MUSE_CAMERA_API_ATTR_SET_HDR_MODE, //115
+ MUSE_CAMERA_API_ATTR_GET_HDR_MODE,
MUSE_CAMERA_API_ATTR_IS_SUPPORTED_HDR_CAPTURE,
MUSE_CAMERA_API_ATTR_SET_HDR_CAPTURE_PROGRESS_CB,
MUSE_CAMERA_API_ATTR_UNSET_HDR_CAPTURE_PROGRESS_CB,
- MUSE_CAMERA_API_ATTR_ENABLE_ANTI_SHAKE,
- MUSE_CAMERA_API_ATTR_IS_ENABLED_ANTI_SHAKE, //120
+ MUSE_CAMERA_API_ATTR_ENABLE_ANTI_SHAKE, //120
+ MUSE_CAMERA_API_ATTR_IS_ENABLED_ANTI_SHAKE,
MUSE_CAMERA_API_ATTR_IS_SUPPORTED_ANTI_SHAKE,
MUSE_CAMERA_API_ATTR_ENABLE_VIDEO_STABILIZATION,
MUSE_CAMERA_API_ATTR_IS_ENABLED_VIDEO_STABILIZATION,
- MUSE_CAMERA_API_ATTR_IS_SUPPORTED_VIDEO_STABILIZATION,
- MUSE_CAMERA_API_ATTR_ENABLE_AUTO_CONTRAST, //125
+ MUSE_CAMERA_API_ATTR_IS_SUPPORTED_VIDEO_STABILIZATION, //125
+ MUSE_CAMERA_API_ATTR_ENABLE_AUTO_CONTRAST,
MUSE_CAMERA_API_ATTR_IS_ENABLED_AUTO_CONTRAST,
MUSE_CAMERA_API_ATTR_IS_SUPPORTED_AUTO_CONTRAST,
MUSE_CAMERA_API_ATTR_DISABLE_SHUTTER_SOUND,
+ MUSE_CAMERA_API_ATTR_GET_ENCODED_PREVIEW_BITRATE, //130
+ MUSE_CAMERA_API_ATTR_SET_ENCODED_PREVIEW_BITRATE,
+ MUSE_CAMERA_API_ATTR_GET_ENCODED_PREVIEW_GOP_INTERVAL,
+ MUSE_CAMERA_API_ATTR_SET_ENCODED_PREVIEW_GOP_INTERVAL,
MUSE_CAMERA_API_RETURN_BUFFER,
- MUSE_CAMERA_API_PREVIEW_CB_RETURN, //130
+ MUSE_CAMERA_API_PREVIEW_CB_RETURN, // 135
MUSE_CAMERA_API_MAX
} muse_camera_api_e;
return MUSE_CAMERA_ERROR_NONE;
}
+int camera_dispatcher_get_flash_state(muse_module_h module)
+{
+ int ret = CAMERA_ERROR_NONE;
+ camera_device_e device_type = CAMERA_DEVICE_CAMERA0;
+ muse_camera_handle_s *muse_camera = NULL;
+ camera_flash_state_e get_flash_state = CAMERA_FLASH_STATE_NOT_USED;
+ muse_camera_api_e api = MUSE_CAMERA_API_GET_FLASH_STATE;
+ muse_camera_api_class_e class = MUSE_CAMERA_API_CLASS_IMMEDIATE;
+
+ muse_camera_msg_get(device_type, muse_core_client_get_msg(module));
+
+ if (device_type == CAMERA_DEVICE_CAMERA0)
+ muse_core_client_get_value(module, "flash_state_camera0", &get_flash_state);
+ else
+ muse_core_client_get_value(module, "flash_state_camera1", &get_flash_state);
+
+ LOGD("fash state : %d", get_flash_state);
+
+ muse_camera_msg_return1(api, class, ret, module, INT, get_flash_state);
+
+ return MUSE_CAMERA_ERROR_NONE;
+}
+
int camera_dispatcher_set_preview_cb(muse_module_h module)
{
int ret = CAMERA_ERROR_NONE;
{
int ret = CAMERA_ERROR_NONE;
muse_camera_handle_s *muse_camera = NULL;
- int set_mode;
+ int set_mode = 0;;
+ camera_device_e device_type = CAMERA_DEVICE_CAMERA0;
muse_camera_api_e api = MUSE_CAMERA_API_ATTR_SET_FLASH_MODE;
muse_camera_api_class_e class = MUSE_CAMERA_API_CLASS_IMMEDIATE;
LOGD("handle : 0x%x, set_mode : %d", muse_camera, set_mode);
ret = legacy_camera_attr_set_flash_mode(muse_camera->camera_handle, (camera_attr_flash_mode_e)set_mode);
+ if (ret == CAMERA_ERROR_NONE) {
+ ret = legacy_camera_get_device_type(muse_camera->camera_handle, &device_type);
+ if (ret == CAMERA_ERROR_NONE) {
+ if (device_type == CAMERA_DEVICE_CAMERA0)
+ muse_core_client_set_value(module, "flash_state_camera0", set_mode>0?1:0);
+ else
+ muse_core_client_set_value(module, "flash_state_camera1", set_mode>0?1:0);
+ }
+ }
LOGD("ret : 0x%x", ret);
return MUSE_CAMERA_ERROR_NONE;
}
+int camera_dispatcher_attr_get_encoded_preview_bitrate(muse_module_h module)
+{
+ int ret = CAMERA_ERROR_NONE;
+ muse_camera_handle_s *muse_camera = NULL;
+ int get_bitrate;
+ muse_camera_api_e api = MUSE_CAMERA_API_ATTR_GET_ENCODED_PREVIEW_BITRATE;
+ muse_camera_api_class_e class = MUSE_CAMERA_API_CLASS_IMMEDIATE;
+
+ muse_camera = (muse_camera_handle_s *)muse_core_ipc_get_handle(module);
+
+ LOGD("handle : %p", muse_camera);
+
+ ret = legacy_camera_attr_get_encoded_preview_bitrate(muse_camera->camera_handle, &get_bitrate);
+ if (ret == CAMERA_ERROR_NONE) {
+ muse_camera_msg_return1(api, class, ret, module, INT, get_bitrate);
+ } else {
+ muse_camera_msg_return(api, class, ret, module);
+ }
+
+ return MUSE_CAMERA_ERROR_NONE;
+}
+
+int camera_dispatcher_attr_set_encoded_preview_bitrate(muse_module_h module)
+{
+ int ret = CAMERA_ERROR_NONE;
+ muse_camera_handle_s *muse_camera = NULL;
+ int set_bitrate;
+ muse_camera_api_e api = MUSE_CAMERA_API_ATTR_SET_ENCODED_PREVIEW_BITRATE;
+ muse_camera_api_class_e class = MUSE_CAMERA_API_CLASS_IMMEDIATE;
+
+ muse_camera = (muse_camera_handle_s *)muse_core_ipc_get_handle(module);
+
+ muse_camera_msg_get(set_bitrate, muse_core_client_get_msg(module));
+
+ LOGD("handle : 0x%x, set_encoded_preview_bitrate : %d", muse_camera, set_bitrate);
+
+ ret = legacy_camera_attr_set_encoded_preview_bitrate(muse_camera->camera_handle, set_bitrate);
+
+ LOGD("ret : 0x%x", ret);
+
+ muse_camera_msg_return(api, class, ret, module);
+
+ return MUSE_CAMERA_ERROR_NONE;
+}
+
+int camera_dispatcher_attr_get_encoded_preview_gop_interval(muse_module_h module)
+{
+ int ret = CAMERA_ERROR_NONE;
+ muse_camera_handle_s *muse_camera = NULL;
+ int get_gop_interval;
+ muse_camera_api_e api = MUSE_CAMERA_API_ATTR_GET_ENCODED_PREVIEW_GOP_INTERVAL;
+ muse_camera_api_class_e class = MUSE_CAMERA_API_CLASS_IMMEDIATE;
+
+ muse_camera = (muse_camera_handle_s *)muse_core_ipc_get_handle(module);
+
+ LOGD("handle : %p", muse_camera);
+
+ ret = legacy_camera_attr_get_encoded_preview_gop_interval(muse_camera->camera_handle, &get_gop_interval);
+ if (ret == CAMERA_ERROR_NONE) {
+ muse_camera_msg_return1(api, class, ret, module, INT, get_gop_interval);
+ } else {
+ muse_camera_msg_return(api, class, ret, module);
+ }
+
+ return MUSE_CAMERA_ERROR_NONE;
+}
+
+int camera_dispatcher_attr_set_encoded_preview_gop_interval(muse_module_h module)
+{
+ int ret = CAMERA_ERROR_NONE;
+ muse_camera_handle_s *muse_camera = NULL;
+ int set_gop_interval;
+ muse_camera_api_e api = MUSE_CAMERA_API_ATTR_SET_ENCODED_PREVIEW_GOP_INTERVAL;
+ muse_camera_api_class_e class = MUSE_CAMERA_API_CLASS_IMMEDIATE;
+
+ muse_camera = (muse_camera_handle_s *)muse_core_ipc_get_handle(module);
+
+ muse_camera_msg_get(set_gop_interval, muse_core_client_get_msg(module));
+
+ LOGD("handle : 0x%x, set_encoded_preview_gop_interval : %d", muse_camera, set_gop_interval);
+
+ ret = legacy_camera_attr_set_encoded_preview_gop_interval(muse_camera->camera_handle, set_gop_interval);
+
+ LOGD("ret : 0x%x", ret);
+
+ muse_camera_msg_return(api, class, ret, module);
+
+ return MUSE_CAMERA_ERROR_NONE;
+}
+
int camera_dispatcher_return_buffer(muse_module_h module)
{
int tbm_key = 0;
camera_dispatcher_get_capture_format, /* MUSE_CAMERA_API_GET_CAPTURE_FORMAT, */
camera_dispatcher_get_preview_format, /* MUSE_CAMERA_API_GET_PREVIEW_FORMAT, */
camera_dispatcher_get_facing_direction, /* MUSE_CAMERA_API_GET_FACING_DIRECTION, */
+ camera_dispatcher_get_flash_state, /* MUSE_CAMERA_API_GET_FLASH_STATE, */
camera_dispatcher_set_preview_cb, /* MUSE_CAMERA_API_SET_PREVIEW_CB, */
camera_dispatcher_unset_preview_cb, /* MUSE_CAMERA_API_UNSET_PREVIEW_CB, */
camera_dispatcher_set_media_packet_preview_cb, /* MUSE_CAMERA_API_SET_MEDIA_PACKET_PREVIEW_CB, */
camera_dispatcher_attr_is_enabled_auto_contrast, /* MUSE_CAMERA_API_ATTR_IS_ENABLED_AUTO_CONTRAST, */
camera_dispatcher_attr_is_supported_auto_contrast, /* MUSE_CAMERA_API_ATTR_IS_SUPPORTED_AUTO_CONTRAST, */
camera_dispatcher_attr_disable_shutter_sound, /* MUSE_CAMERA_API_ATTR_DISABLE_SHUTTER_SOUND, */
+ camera_dispatcher_attr_get_encoded_preview_bitrate, /* MUSE_CAMERA_API_ATTR_GET_ENCODED_PREVIEW_BITRATE, */
+ camera_dispatcher_attr_set_encoded_preview_bitrate, /* MUSE_CAMERA_API_ATTR_SET_ENCODED_PREVIEW_BITRATE, */
+ camera_dispatcher_attr_get_encoded_preview_gop_interval, /* MUSE_CAMERA_API_ATTR_GET_ENCODED_PREVIEW_GOP_INTERVAL, */
+ camera_dispatcher_attr_set_encoded_preview_gop_interval, /* MUSE_CAMERA_API_ATTR_SET_ENCODED_PREVIEW_GOP_INTERVAL, */
camera_dispatcher_return_buffer, /* MUSE_CAMERA_API_RETURN_BUFFER, */
camera_dispatcher_preview_cb_return, /* MUSE_CAMERA_API_PREVIEW_CB_RETURN, */
};
Name: mmsvc-camera
Summary: A Camera module for muse server
-Version: 0.2.26
+Version: 0.2.27
Release: 0
Group: Multimedia/Libraries
License: Apache-2.0