bool _mmcamcorder_commit_target_filename(MMHandleType handle, int attr_idx, const mmf_value_t *value)
{
- _MMCamcorderSubContext *sc = NULL;
- const char *filename = NULL;
int size = 0;
+ const char *filename = NULL;
mmf_return_val_if_fail(handle && value, FALSE);
- sc = MMF_CAMCORDER_SUBCONTEXT(handle);
- if (!sc)
- return TRUE;
-
/* get string */
filename = mmf_value_get_string(value, &size);
if (filename == NULL) {
return FALSE;
}
- if (sc->info_video) {
- SAFE_G_FREE(sc->info_video->filename);
- sc->info_video->filename = g_strdup(filename);
- if (sc->info_video->filename == NULL) {
- _mmcam_dbg_err("failed to strdup filename [%s]", filename);
- return FALSE;
- }
- }
-
- if (sc->encode_element && sc->encode_element[_MMCAMCORDER_ENCSINK_SINK].gst) {
- _mmcam_dbg_log("new file location set.[%s] filesink %p", filename, sc->encode_element[_MMCAMCORDER_ENCSINK_SINK].gst);
- MMCAMCORDER_G_OBJECT_SET_POINTER(sc->encode_element[_MMCAMCORDER_ENCSINK_SINK].gst, "location", filename);
- _mmcam_dbg_log("new file location set.(%s)", filename);
- } else {
- _mmcam_dbg_log("element is not created yet. [%s] will be set later...", filename);
- }
+ _mmcam_dbg_log("set filename [%s]", filename);
return TRUE;
}
NULL);
}
}
-
- return TRUE;
} else {
- _mmcam_dbg_warn("videosink[%s] does not support display rect.", videosink_name);
- return FALSE;
+ _mmcam_dbg_warn("[%s] does not support display rect, but no error", videosink_name);
}
+
+ return TRUE;
}
new_pid = value->value.i_val;
- _mmcam_dbg_log("Commit : pid %d, current focus id %d, subscribe id %u",
+ _mmcam_dbg_warn("Commit : pid %d, current focus id %d, subscribe id %u",
new_pid, hcamcorder->sound_focus_id, hcamcorder->sound_focus_subscribe_id);
/* unregister sound focus and unsubscribe sound signal before set new one */
return FALSE;
}
- sc = MMF_CAMCORDER_SUBCONTEXT(handle);
- if (!sc || !sc->encode_element ||
- !sc->encode_element[_MMCAMCORDER_AUDIOSRC_SRC].gst) {
- _mmcam_dbg_log("audiosrc element is not initialized, it will be set later");
- return TRUE;
- }
-
mm_camcorder_get_attributes(handle, NULL,
MMCAM_SOUND_STREAM_INDEX, &stream_index,
NULL);
return FALSE;
}
- _mmcam_dbg_log("Commit : sound stream info - type %s, index %d", stream_type, stream_index);
+ /* unset watch callback if existed */
+ _mmcamcorder_sound_signal_callback(MM_SOUND_SIGNAL_RELEASE_INTERNAL_FOCUS, 1, (void *)handle);
+
+ sc = MMF_CAMCORDER_SUBCONTEXT(handle);
+ if (!sc || !sc->encode_element ||
+ !sc->encode_element[_MMCAMCORDER_AUDIOSRC_SRC].gst) {
+ _mmcam_dbg_warn("audiosrc element is not initialized, it will be set later");
+ return TRUE;
+ }
+
+ _mmcam_dbg_warn("Commit : sound stream info - type %s, index %d", stream_type, stream_index);
return _mmcamcorder_set_sound_stream_info(sc->encode_element[_MMCAMCORDER_AUDIOSRC_SRC].gst, stream_type, stream_index);
}
MM_CAM_CAMERA_WDR,
MM_CAM_FILTER_CONTRAST,
MM_CAM_FILTER_HUE,
- MM_CAM_STROBE_MODE,
MM_CAM_DETECT_MODE
};
mmf_return_val_if_fail(hcamcorder, FALSE);
- _mmcam_dbg_log("Set all attribute again.");
+ _mmcam_dbg_log("commit some attributes again");
attr = (mmf_attrs_t *)MMF_CAMCORDER_ATTRS(handle);
if (attr == NULL) {
}
+bool _mmcamcorder_set_attribute_to_camsensor2(MMHandleType handle)
+{
+ mmf_camcorder_t *hcamcorder = MMF_CAMCORDER(handle);
+ mmf_attrs_t *attr = NULL;
+
+ unsigned int i = 0;
+ int ret = TRUE;
+ int attr_idxs[] = {
+ MM_CAM_STROBE_MODE
+ };
+
+ mmf_return_val_if_fail(hcamcorder, FALSE);
+
+ _mmcam_dbg_log("commit some attribute again[2]");
+
+ attr = (mmf_attrs_t *)MMF_CAMCORDER_ATTRS(handle);
+ if (attr == NULL) {
+ _mmcam_dbg_err("Get attribute handle failed.");
+ return FALSE;
+ } else {
+ _mmcam_dbg_log("attribute count(%d)", attr->count);
+
+ for (i = 0 ; i < ARRAY_SIZE(attr_idxs) ; i++) {
+ if (__mmcamcorder_attrs_is_supported((MMHandleType)attr, attr_idxs[i]))
+ mmf_attribute_set_modified(&(attr->items[attr_idxs[i]]));
+ }
+
+ if (mmf_attrs_commit((MMHandleType)attr) == -1)
+ ret = FALSE;
+ else
+ ret = TRUE;
+ }
+
+ _mmcam_dbg_log("Done.");
+
+ return ret;
+}
+
+
int _mmcamcorder_lock_readonly_attributes(MMHandleType handle)
{
mmf_camcorder_t *hcamcorder = MMF_CAMCORDER(handle);