Set playing status into vconf 80/267280/1
authorSuyeon Hwang <stom.hwang@samsung.com>
Wed, 1 Dec 2021 02:33:35 +0000 (11:33 +0900)
committerSuyeon Hwang <stom.hwang@samsung.com>
Wed, 1 Dec 2021 02:54:41 +0000 (11:54 +0900)
Change-Id: I1fb76eb58d87a54516bbf15fcd02ea6829c59f85
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
common/tts_defs.h
server/ttsd_player.c

index 80c6a4076d32e7c2ae3cfb8aef99b7a135cfe3cd..2ffacac762e0065ae78a23008ff7554853d853ff 100644 (file)
@@ -133,6 +133,8 @@ extern "C" {
 
 #define TTS_ENGINE_DB_DEFAULT       "db/voice/tts/engine/default"
 
+#define TTS_PLAYING_STATUS_KEY "memory/tts/engine/voice-guide-playing"
+
 
 /******************************************************************************************
 * Defines for log tag
index 76a8c8b8ce721097d6471287b74ecd52f0e34fb3..d5ff1af7f079e58cb015c46fc6726ca9b5b942cc 100644 (file)
@@ -114,6 +114,11 @@ static pthread_mutex_t g_player_control_mutex = PTHREAD_MUTEX_INITIALIZER;
 /*
 * Internal Interfaces
 */
+static void __set_playing_status(bool is_playing)
+{
+       int ret = vconf_set_bool(TTS_PLAYING_STATUS_KEY, is_playing ? 1 : 0);
+       SLOG(LOG_INFO, tts_tag(), "[Player] Set playing status (%s). ret(%d)", is_playing ? "True" : "False", ret);
+}
 
 static bool __is_player_valid(player_s* player)
 {
@@ -369,6 +374,7 @@ static void __end_play_thread(void *data, Ecore_Thread *thread)
 #ifdef BUF_SAVE_MODE
        fclose(g_pFile);
 #endif
+       __set_playing_status(false);
 }
 
 static void __del_timer_for_delayed_recover(void* data)
@@ -622,6 +628,8 @@ static void __play_thread(void *data, Ecore_Thread *thread)
                                pthread_mutex_unlock(&g_play_thread_mutex);
                                return;
                        }
+                       __set_playing_status(true);
+
                        SLOG(LOG_INFO, tts_tag(), "[Player] Sound info : id(%d) data(%p) size(%d) audiotype(%d) rate(%d) event(%d)",
                                sound_data->utt_id, sound_data->data, sound_data->data_size, sound_data->audio_type, sound_data->rate, sound_data->event);
                } else { // NO player->is_paused_data
@@ -707,6 +715,7 @@ static void __play_thread(void *data, Ecore_Thread *thread)
                                        return;
                                }
 
+                               __set_playing_status(true);
                                if (0 != ttsdc_ipc_send_utt_start_message(pid, player->uid, sound_data->utt_id)) {
                                        SLOG(LOG_ERROR, tts_tag(), "[Send ERROR] Fail to send Utterance Start Signal : pid(%d), uid(%d), uttid(%d)",
                                                pid, player->uid, sound_data->utt_id);
@@ -735,6 +744,7 @@ static void __play_thread(void *data, Ecore_Thread *thread)
 
                                        __unset_policy_for_playing();
 
+                                       __set_playing_status(false);
                                        if (0 != ttsdc_ipc_send_utt_finish_message(pid, player->uid, sound_data->utt_id)) {
                                                SLOG(LOG_ERROR, tts_tag(), "[Send ERROR] Fail to send Utterance Completed Signal : pid(%d), uid(%d), uttid(%d)",
                                                        pid, player->uid, sound_data->utt_id);
@@ -900,6 +910,7 @@ static void __play_thread(void *data, Ecore_Thread *thread)
                                return;
                        }
 
+                       __set_playing_status(false);
                        if (0 != ttsdc_ipc_send_utt_finish_message(pid, player->uid, sound_data->utt_id)) {
                                SLOG(LOG_ERROR, tts_tag(), "[Send ERROR] Fail to send Utterance Completed Signal : pid(%d), uid(%d), uttid(%d)",
                                        pid, player->uid, sound_data->utt_id);
@@ -1068,6 +1079,7 @@ static void __destroy_all_ducking_handles()
 
 int ttsd_player_release(void)
 {
+       __set_playing_status(false);
        pthread_mutex_lock(&g_player_control_mutex);
        if (false == g_player_init) {
                SLOG(LOG_ERROR, tts_tag(), "[Player ERROR] Not Initialized");
@@ -1278,6 +1290,7 @@ int ttsd_player_stop(int uid)
                pthread_mutex_unlock(&g_play_thread_mutex);
        }
 
+       __set_playing_status(false);
        int ret = ttsd_player_clear(uid);
        if (0 != ret) {
                SLOG(LOG_ERROR, tts_tag(), "[Player ERROR] Fail to stop player, ret(%d)", ret);
@@ -1362,6 +1375,7 @@ int ttsd_player_pause(int uid)
                pthread_mutex_unlock(&g_play_thread_mutex);
        }
 
+       __set_playing_status(false);
        SLOG(LOG_DEBUG, tts_tag(), "[Player SUCCESS] Pause player : uid(%d)", uid);
 
        pthread_mutex_unlock(&g_player_control_mutex);