#include <muse_camera_internal.h>
#include <mm_types.h>
#include <dlog.h>
+#include <vconf.h>
#include <gst/gst.h>
#include "legacy_recorder_internal.h"
int device_recording = 0;
int device_paused = 0;
int device_status = -1;
- int current_state = 0;
- static int device_state[MUSE_RECORDER_TYPE_NUM] = {0, 0}; /* 0:MUSE_RECORDER_TYPE_AUDIO, 1:MUSE_RECORDER_TYPE_VIDEO */
+ int vconf_state_recorder = VCONFKEY_RECORDER_STATE_NULL;
+ int vconf_state_camera = VCONFKEY_CAMERA_STATE_PREVIEW;
+ recorder_device_state_e current_state = RECORDER_DEVICE_STATE_IDLE;
+ static recorder_device_state_e device_state[MUSE_RECORDER_TYPE_NUM] = {
+ RECORDER_DEVICE_STATE_IDLE, /* 0:MUSE_RECORDER_TYPE_AUDIO */
+ RECORDER_DEVICE_STATE_IDLE /* 1:MUSE_RECORDER_TYPE_VIDEO */
+ };
if (module == NULL) {
LOGE("NULL module");
muse_server_module_set_value(module, value_key, device_status);
/* check whether emit signal or not */
- if (device_recording > 0)
+ if (device_recording > 0) {
current_state = RECORDER_DEVICE_STATE_RECORDING;
- else if (device_paused > 0)
+ vconf_state_recorder = VCONFKEY_RECORDER_STATE_RECORDING;
+ vconf_state_camera = VCONFKEY_CAMERA_STATE_RECORDING;
+ } else if (device_paused > 0) {
current_state = RECORDER_DEVICE_STATE_PAUSED;
- else
- current_state = RECORDER_DEVICE_STATE_IDLE;
+ vconf_state_recorder = VCONFKEY_RECORDER_STATE_RECORDING_PAUSE;
+ vconf_state_camera = VCONFKEY_CAMERA_STATE_RECORDING_PAUSE;
+ }
if (current_state != device_state[muse_recorder->type]) {
LOGD("old %d -> new %d", device_state[muse_recorder->type], current_state);
}
if (emit_value != -1) {
- LOGD("recorder devce state change signal [0x%08x]", emit_value);
+ LOGD("recorder devce state change signal [0x%08x], vconf state : %d",
+ emit_value, vconf_state_recorder);
legacy_recorder_emit_signal(muse_recorder->recorder_handle,
MM_CAMCORDER_DBUS_OBJECT,
MM_CAMCORDER_DBUS_INTERFACE_RECORDER,
MM_CAMCORDER_DBUS_SIGNAL_STATE_CHANGED,
emit_value);
+
+ vconf_set_int(VCONFKEY_RECORDER_STATE, vconf_state_recorder);
+
+ if (muse_recorder->type == MUSE_RECORDER_TYPE_VIDEO) {
+ LOGD("Update vconf camera device state also : %d", vconf_state_camera);
+ vconf_set_int(VCONFKEY_CAMERA_STATE, vconf_state_camera);
+ }
}
g_mutex_unlock(&g_recorder_device_state_lock);
Name: mmsvc-recorder
Summary: A Recorder module for muse server
-Version: 0.3.17
-Release: 1
+Version: 0.3.18
+Release: 0
Group: Multimedia/Libraries
License: Apache-2.0
Source0: %{name}-%{version}.tar.gz
BuildRequires: cmake
BuildRequires: pkgconfig(gstreamer-1.0)
BuildRequires: pkgconfig(dlog)
+BuildRequires: pkgconfig(vconf)
BuildRequires: pkgconfig(mm-camcorder)
BuildRequires: pkgconfig(capi-base-common)
BuildRequires: pkgconfig(mmsvc-camera)