static GSList* g_config_client_list = NULL;
-static tts_config_s* g_config_info = NULL;
extern char g_engine_id[128];
extern char g_setting[128];
extern char g_language[128];
}
}
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
if (NULL != engine_info->uuid) {
memset(g_engine_id, '\0', sizeof(g_engine_id));
- g_config_info->engine_id = g_engine_id;
- strncpy(g_config_info->engine_id, engine_info->uuid, sizeof(g_engine_id) - 1);
+ config_info.engine_id = g_engine_id;
+ strncpy(config_info.engine_id, engine_info->uuid, sizeof(g_engine_id) - 1);
}
if (NULL != engine_info->setting) {
memset(g_setting, '\0', sizeof(g_setting));
- g_config_info->setting = g_setting;
- strncpy(g_config_info->setting, engine_info->setting, sizeof(g_setting) - 1);
+ config_info.setting = g_setting;
+ strncpy(config_info.setting, engine_info->setting, sizeof(g_setting) - 1);
}
- SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Default engine is changed : %s", g_config_info->engine_id);
+ SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Default engine is changed : %s", config_info.engine_id);
/* Change is default voice */
GSList *iter_voice = NULL;
if (NULL != voice) {
if (NULL != voice->language) {
- if (0 == strcmp(voice->language, g_config_info->language)) {
- if (voice->type == g_config_info->type) {
+ if (0 == strcmp(voice->language, config_info.language)) {
+ if (voice->type == config_info.type) {
/* language is valid */
is_valid_voice = true;
memset(g_language, '\0', sizeof(g_language));
- g_config_info->language = g_language;
- strncpy(g_config_info->language, voice->language, sizeof(g_language) - 1);
+ config_info.language = g_language;
+ strncpy(config_info.language, voice->language, sizeof(g_language) - 1);
- g_config_info->type = voice->type;
+ config_info.type = voice->type;
SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Default voice is changed : lang(%s) type(%d)", voice->language, voice->type);
break;
}
if (false == is_valid_voice) {
- /* Select first voice as default */
- memset(g_language, '\0', sizeof(g_language));
- g_config_info->language = g_language;
-
iter_voice = g_slist_nth(engine_info->voices, 0);
if (NULL == iter_voice) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "Fail to get voice list");
SLOG(LOG_ERROR, TAG_TTSCONFIG, "Fail to get voice info from list");
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
- strncpy(g_config_info->language, voice->language, sizeof(g_language) - 1);
+ /* Select first voice as default */
+ memset(g_language, '\0', sizeof(g_language));
+ config_info.language = g_language;
+
+ strncpy(config_info.language, voice->language, sizeof(g_language) - 1);
- g_config_info->type = voice->type;
+ config_info.type = voice->type;
SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Default voice is changed : lang(%s) type(%d)", voice->language, voice->type);
}
- if (0 != tts_parser_set_engine(g_config_info->engine_id, g_config_info->setting, g_config_info->language, g_config_info->type)) {
+ if (0 != tts_parser_set_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to set configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
+ if (0 != tts_parser_set_engine(config_info.engine_id, config_info.setting, config_info.language, config_info.type)) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, " Fail to save config");
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
return ECORE_CALLBACK_DONE;
}
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
if (IN_CLOSE_WRITE == event.mask) {
/* check config changed state */
char* engine = NULL;
char* setting = NULL;
char* lang = NULL;
- bool auto_voice = g_config_info->auto_voice;
+ bool auto_voice = config_info.auto_voice;
int voice_type = -1;
int speech_rate = -1;
int pitch = -1;
if (NULL != engine || NULL != setting) {
if (NULL != engine) {
memset(g_engine_id, '\0', sizeof(g_engine_id));
- g_config_info->engine_id = g_engine_id;
- strncpy(g_config_info->engine_id, engine, sizeof(g_engine_id) - 1);
+ config_info.engine_id = g_engine_id;
+ strncpy(config_info.engine_id, engine, sizeof(g_engine_id) - 1);
}
if (NULL != setting) {
memset(g_setting, '\0', sizeof(g_setting));
- g_config_info->setting = g_setting;
- strncpy(g_config_info->setting, setting, sizeof(g_setting) - 1);
+ config_info.setting = g_setting;
+ strncpy(config_info.setting, setting, sizeof(g_setting) - 1);
}
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Engine change(%s)", g_config_info->engine_id);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Engine change(%s)", config_info.engine_id);
/* Call all callbacks of client*/
iter = g_slist_nth(g_config_client_list, 0);
if (NULL != temp_client) {
if (NULL != temp_client->engine_cb) {
SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Engine changed callback : uid(%d)", temp_client->uid);
- temp_client->engine_cb(g_config_info->engine_id, g_config_info->setting,
- g_config_info->language, g_config_info->type,
- g_config_info->auto_voice, g_config_info->credential, temp_client->user_data);
+ temp_client->engine_cb(config_info.engine_id, config_info.setting,
+ config_info.language, config_info.type,
+ config_info.auto_voice, config_info.credential, temp_client->user_data);
}
}
}
}
- if (auto_voice != g_config_info->auto_voice) {
- g_config_info->auto_voice = auto_voice;
+ if (auto_voice != config_info.auto_voice) {
+ config_info.auto_voice = auto_voice;
}
if (NULL != lang || -1 != voice_type) {
char* before_lang = NULL;
int before_type;
- before_lang = strdup(g_config_info->language);
- before_type = g_config_info->type;
+ before_lang = strdup(config_info.language);
+ before_type = config_info.type;
if (NULL != lang) {
memset(g_language, '\0', sizeof(g_language));
- g_config_info->language = g_language;
- strncpy(g_config_info->language, lang, sizeof(g_language) - 1);
+ config_info.language = g_language;
+ strncpy(config_info.language, lang, sizeof(g_language) - 1);
}
if (-1 != voice_type) {
- g_config_info->type = voice_type;
+ config_info.type = voice_type;
}
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Voice change(%s, %d)", g_config_info->language, g_config_info->type);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Voice change(%s, %d)", config_info.language, config_info.type);
/* Call all callbacks of client*/
iter = g_slist_nth(g_config_client_list, 0);
if (NULL != temp_client->voice_cb) {
SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Voice changed callback : uid(%d)", temp_client->uid);
temp_client->voice_cb(before_lang, before_type,
- g_config_info->language, g_config_info->type,
- g_config_info->auto_voice, temp_client->user_data);
+ config_info.language, config_info.type,
+ config_info.auto_voice, temp_client->user_data);
}
}
}
if (-1 != speech_rate) {
- g_config_info->speech_rate = speech_rate;
+ config_info.speech_rate = speech_rate;
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Speech rate change(%d)", g_config_info->speech_rate);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Speech rate change(%d)", config_info.speech_rate);
/* Call all callbacks of client*/
iter = g_slist_nth(g_config_client_list, 0);
if (NULL != temp_client) {
if (NULL != temp_client->speech_cb) {
SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Speech rate changed callback : uid(%d)", temp_client->uid);
- temp_client->speech_cb(g_config_info->speech_rate, temp_client->user_data);
+ temp_client->speech_cb(config_info.speech_rate, temp_client->user_data);
}
}
}
if (-1 != pitch) {
- g_config_info->pitch = pitch;
+ config_info.pitch = pitch;
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "pitch change(%d)", g_config_info->pitch);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "pitch change(%d)", config_info.pitch);
/* Call all callbacks of client*/
iter = g_slist_nth(g_config_client_list, 0);
if (NULL != temp_client) {
if (NULL != temp_client->pitch_cb) {
SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Pitch changed callback : uid(%d)", temp_client->uid);
- temp_client->pitch_cb(g_config_info->pitch, temp_client->user_data);
+ temp_client->pitch_cb(config_info.pitch, temp_client->user_data);
}
}
}
if (-1 != bg_volume_ratio) {
- g_config_info->bg_volume_ratio = bg_volume_ratio;
+ config_info.bg_volume_ratio = bg_volume_ratio;
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "background volume ratio change(%lf)", g_config_info->bg_volume_ratio);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "background volume ratio change(%lf)", config_info.bg_volume_ratio);
/* Call all callbacks of client*/
iter = g_slist_nth(g_config_client_list, 0);
if (NULL != temp_client) {
if (NULL != temp_client->bg_volume_ratio_cb) {
SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "background volume ratio changed callback : uid(%d)", temp_client->uid);
- temp_client->bg_volume_ratio_cb(g_config_info->bg_volume_ratio, temp_client->user_data);
+ temp_client->bg_volume_ratio_cb(config_info.bg_volume_ratio, temp_client->user_data);
}
}
free(lang);
lang = NULL;
}
+
+ if (0 != tts_parser_set_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to set configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
} else if (IN_DELETE_SELF == event.mask) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] IN_DELETE_SELF event");
- tts_parser_unload_config(g_config_info);
+ tts_parser_unload_config();
tts_parser_reset();
- tts_parser_load_config(&g_config_info);
+ tts_parser_load_config();
} else {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Undefined event (0x%x)", event.mask);
}
free(value);
value = NULL;
- if (true == __tts_config_mgr_check_lang_is_valid(g_config_info->engine_id, temp_lang, g_config_info->type)) {
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
+ if (true == __tts_config_mgr_check_lang_is_valid(config_info.engine_id, temp_lang, config_info.type)) {
/* tts default voice change */
- if (NULL == g_config_info->language) {
+ if (NULL == config_info.language) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "Current config language is NULL");
return -1;
}
char* before_lang = NULL;
int before_type;
- if (0 != tts_parser_set_voice(temp_lang, g_config_info->type)) {
+ if (0 != tts_parser_set_voice(temp_lang, config_info.type)) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "Fail to save default voice");
return -1;
}
- before_lang = strdup(g_config_info->language);
- before_type = g_config_info->type;
+ before_lang = strdup(config_info.language);
+ before_type = config_info.type;
memset(g_language, '\0', sizeof(g_language));
- g_config_info->language = g_language;
- strncpy(g_config_info->language, temp_lang, sizeof(g_language) - 1);
+ config_info.language = g_language;
+ strncpy(config_info.language, temp_lang, sizeof(g_language) - 1);
SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "[Config] Default voice : lang(%s) type(%d)",
- g_config_info->language, g_config_info->type);
+ config_info.language, config_info.type);
GSList *iter = NULL;
tts_config_client_s* temp_client = NULL;
if (NULL != temp_client) {
if (NULL != temp_client->voice_cb) {
temp_client->voice_cb(before_lang, before_type,
- g_config_info->language, g_config_info->type,
- g_config_info->auto_voice, temp_client->user_data);
+ config_info.language, config_info.type,
+ config_info.auto_voice, temp_client->user_data);
}
}
/* Display language is not valid */
char* tmp_language = NULL;
int tmp_type = -1;
- if (0 != __tts_config_mgr_select_lang(g_config_info->engine_id, &tmp_language, &tmp_type)) {
+ if (0 != __tts_config_mgr_select_lang(config_info.engine_id, &tmp_language, &tmp_type)) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to select language");
return -1;
}
if (NULL != temp_client) {
if (NULL != temp_client->voice_cb) {
- temp_client->voice_cb(g_config_info->language, g_config_info->type,
- tmp_language, tmp_type, g_config_info->auto_voice, temp_client->user_data);
+ temp_client->voice_cb(config_info.language, config_info.type,
+ tmp_language, tmp_type, config_info.auto_voice, temp_client->user_data);
}
}
memset(g_language, '\0', sizeof(g_language));
- g_config_info->language = g_language;
- strncpy(g_config_info->language, tmp_language, sizeof(g_language) - 1);
+ config_info.language = g_language;
+ strncpy(config_info.language, tmp_language, sizeof(g_language) - 1);
- g_config_info->type = tmp_type;
+ config_info.type = tmp_type;
free(tmp_language);
tmp_language = NULL;
}
+ if (0 != tts_parser_set_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to set configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
return 0;
}
void __tts_config_display_language_changed_cb(keynode_t *key, void *data)
{
- if (NULL == g_config_info) {
- SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Current config info is invalid.");
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
return;
}
-
- if (true == g_config_info->auto_voice) {
+ if (true == config_info.auto_voice) {
__tts_config_set_auto_language();
}
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get engine info when config updated");
}
__tts_config_mgr_print_engine_info();
- bool support = tts_config_check_default_voice_is_valid(g_config_info->language, g_config_info->type);
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+ bool support = tts_config_check_default_voice_is_valid(config_info.language, config_info.type);
if (false == support) {
SLOG(LOG_DEBUG, TAG_TTSCONFIG, "[ERROR] Default voice is valid");
char* temp_lang = NULL;
int temp_type;
- ret = __tts_config_mgr_select_lang(g_config_info->engine_id, &temp_lang, &temp_type);
+ ret = __tts_config_mgr_select_lang(config_info.engine_id, &temp_lang, &temp_type);
if (0 != ret) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get voice");
}
if (0 != ret) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to set voice");
} else {
- SLOG(LOG_DEBUG, TAG_TTSCONFIG, "[DEBUG] Saved default voice : lang(%s), type(%d)", g_config_info->language, g_config_info->type);
+ SLOG(LOG_DEBUG, TAG_TTSCONFIG, "[DEBUG] Saved default voice : lang(%s), type(%d)", config_info.language, config_info.type);
}
if (NULL != temp_lang) {
free(temp_lang);
if (NULL != temp_client) {
if (NULL != temp_client->engine_cb) {
SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, "Engine changed callback : uid(%d)", temp_client->uid);
- temp_client->engine_cb(g_config_info->engine_id, g_config_info->setting,
- g_config_info->language, g_config_info->type,
- g_config_info->auto_voice, g_config_info->credential, temp_client->user_data);
+ temp_client->engine_cb(config_info.engine_id, config_info.setting,
+ config_info.language, config_info.type,
+ config_info.auto_voice, config_info.credential, temp_client->user_data);
}
}
__tts_config_mgr_print_engine_info();
- if (0 != tts_parser_load_config(&g_config_info)) {
+ if (0 != tts_parser_load_config()) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to parse configure information");
__tts_config_release_client(uid);
__tts_config_release_engine();
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)) {
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ __tts_config_release_client(uid);
+ __tts_config_release_engine();
+ return TTS_CONFIG_ERROR_OPERATION_FAILED;
+ }
/* Check whether engine id is valid */
- if (0 != __tts_config_mgr_check_engine_is_valid(g_config_info->engine_id)) {
+ if (0 != __tts_config_mgr_check_engine_is_valid(config_info.engine_id)) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get default engine");
__tts_config_release_client(uid);
__tts_config_release_engine();
- tts_parser_unload_config(g_config_info);
- g_config_info = NULL;
+ tts_parser_unload_config();
return TTS_CONFIG_ERROR_ENGINE_NOT_FOUND;
}
- if (true == g_config_info->auto_voice) {
+ if (true == config_info.auto_voice) {
/* Check language with display language */
__tts_config_set_auto_language();
} else {
- if (false == __tts_config_mgr_check_lang_is_valid(g_config_info->engine_id, g_config_info->language, g_config_info->type)) {
+ if (false == __tts_config_mgr_check_lang_is_valid(config_info.engine_id, config_info.language, config_info.type)) {
/* Default language is not valid */
char* tmp_language = NULL;
int tmp_type = -1;
- if (0 != __tts_config_mgr_select_lang(g_config_info->engine_id, &tmp_language, &tmp_type)) {
+ if (0 != __tts_config_mgr_select_lang(config_info.engine_id, &tmp_language, &tmp_type)) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to select language");
__tts_config_release_client(uid);
__tts_config_release_engine();
- tts_parser_unload_config(g_config_info);
- g_config_info = NULL;
+ tts_parser_unload_config();
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
if (NULL != tmp_language) {
memset(g_language, '\0', sizeof(g_language));
- g_config_info->language = g_language;
- strncpy(g_config_info->language, tmp_language, sizeof(g_language) - 1);
+ config_info.language = g_language;
+ strncpy(config_info.language, tmp_language, sizeof(g_language) - 1);
- g_config_info->type = tmp_type;
+ config_info.type = tmp_type;
free(tmp_language);
tmp_language = NULL;
- if (0 != tts_parser_set_voice(g_config_info->language, g_config_info->type)) {
+ if (0 != tts_parser_set_config_info(&config_info)) {
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to set configure information");
+ return TTS_CONFIG_ERROR_OPERATION_FAILED;
+ }
+
+ if (0 != tts_parser_set_voice(config_info.language, config_info.type)) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to save config");
__tts_config_release_client(uid);
__tts_config_release_engine();
- tts_parser_unload_config(g_config_info);
- g_config_info = NULL;
+ tts_parser_unload_config();
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
}
/* print daemon config */
SLOG(LOG_DEBUG, TAG_TTSCONFIG, "@@@ TTS config @@@");
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " engine : %s", g_config_info->engine_id);
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " setting : %s", g_config_info->setting);
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " auto voice : %s", g_config_info->auto_voice ? "on" : "off");
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " language : %s", g_config_info->language);
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " voice type : %d", g_config_info->type);
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " speech rate : %d", g_config_info->speech_rate);
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " pitch : %d", g_config_info->pitch);
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " bg volume ratio : %lf", g_config_info->bg_volume_ratio);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " engine : %s", config_info.engine_id);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " setting : %s", config_info.setting);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " auto voice : %s", config_info.auto_voice ? "on" : "off");
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " language : %s", config_info.language);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " voice type : %d", config_info.type);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " speech rate : %d", config_info.speech_rate);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " pitch : %d", config_info.pitch);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " bg volume ratio : %lf", config_info.bg_volume_ratio);
SLOG(LOG_DEBUG, TAG_TTSCONFIG, "@@@@@");
if (0 != __tts_config_mgr_register_config_event()) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to register config event");
__tts_config_release_client(uid);
__tts_config_release_engine();
- tts_parser_unload_config(g_config_info);
- g_config_info = NULL;
+ tts_parser_unload_config();
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
// SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to register engine config updated event");
// __tts_config_release_client(uid);
// __tts_config_release_engine();
- // tts_parser_unload_config(g_config_info);
+ // tts_parser_unload_config();
// __tts_config_mgr_unregister_config_event();
// return TTS_CONFIG_ERROR_OPERATION_FAILED;
//}
__tts_config_release_engine();
- tts_parser_unload_config(g_config_info);
- g_config_info = NULL;
+ tts_parser_unload_config();
__tts_config_mgr_unregister_engine_config_updated_event();
return TTS_CONFIG_ERROR_INVALID_PARAMETER;
}
- if (NULL != g_config_info->engine_id) {
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
+ if (NULL != config_info.engine_id) {
/* Check engine id is valid */
GSList *iter = NULL;
tts_engine_info_s *engine_info = NULL;
engine_info = iter->data;
if (NULL != engine_info) {
- if (0 == strcmp(engine_info->uuid, g_config_info->engine_id)) {
- *engine = strdup(g_config_info->engine_id);
+ if (0 == strcmp(engine_info->uuid, config_info.engine_id)) {
+ *engine = strdup(config_info.engine_id);
return 0;
}
}
if (NULL == engine)
return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
/* Check current engine id with new engine id */
- if (0 == strcmp(g_config_info->engine_id, engine))
+ if (0 == strcmp(config_info.engine_id, engine))
return 0;
if (0 >= g_slist_length(g_engine_list)) {
}
memset(g_engine_id, '\0', sizeof(g_engine_id));
- g_config_info->engine_id = g_engine_id;
- strncpy(g_config_info->engine_id, engine, sizeof(g_engine_id) - 1);
+ config_info.engine_id = g_engine_id;
+ strncpy(config_info.engine_id, engine, sizeof(g_engine_id) - 1);
if (NULL != engine_info->setting) {
memset(g_setting, '\0', sizeof(g_setting));
- g_config_info->setting = g_setting;
- strncpy(g_config_info->setting, engine_info->setting, sizeof(g_setting) - 1);
+ config_info.setting = g_setting;
+ strncpy(config_info.setting, engine_info->setting, sizeof(g_setting) - 1);
}
/* Engine is valid*/
continue;
SLOG(LOG_DEBUG, TAG_TTSCONFIG, " lang(%s) type(%d)", voice->language, voice->type);
- if (0 == strcmp(voice->language, g_config_info->language)) {
- if (voice->type == g_config_info->type) {
+ if (0 == strcmp(voice->language, config_info.language)) {
+ if (voice->type == config_info.type) {
/* language is valid */
is_valid_voice = true;
- g_config_info->type = voice->type;
+ config_info.type = voice->type;
}
break;
}
if (false == is_valid_voice) {
memset(g_language, '\0', sizeof(g_language));
- g_config_info->language = g_language;
+ config_info.language = g_language;
iter_voice = g_slist_nth(engine_info->voices, 0);
if (NULL != iter_voice) {
voice = iter_voice->data;
if (NULL != voice) {
if (NULL != voice->language)
- strncpy(g_config_info->language, voice->language, sizeof(g_language) - 1);
+ strncpy(config_info.language, voice->language, sizeof(g_language) - 1);
- g_config_info->type = voice->type;
+ config_info.type = voice->type;
}
}
}
break;
}
+ if (0 != tts_parser_set_config_info(&config_info)) {
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to set configure information");
+ return TTS_CONFIG_ERROR_OPERATION_FAILED;
+ }
+
if (true == is_valid_engine) {
SLOG(LOG_DEBUG, TAG_TTSCONFIG, "[Config] Engine changed");
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " Engine : %s", g_config_info->engine_id);
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " Setting : %s", g_config_info->setting);
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " Language : %s", g_config_info->language);
- SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " Type : %d", g_config_info->type);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " Engine : %s", config_info.engine_id);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " Setting : %s", config_info.setting);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " Language : %s", config_info.language);
+ SECURE_SLOG(LOG_DEBUG, TAG_TTSCONFIG, " Type : %d", config_info.type);
- if (0 != tts_parser_set_engine(g_config_info->engine_id, g_config_info->setting,
- g_config_info->language, g_config_info->type)) {
+ if (0 != tts_parser_set_engine(config_info.engine_id, config_info.setting,
+ config_info.language, config_info.type)) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, " Fail to save config");
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
if (NULL == language || NULL == type)
return TTS_CONFIG_ERROR_INVALID_PARAMETER;
- if (0 != strlen(g_config_info->language)) {
- *language = strdup(g_config_info->language);
- *type = g_config_info->type;
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
+ if (0 != strlen(config_info.language)) {
+ *language = strdup(config_info.language);
+ *type = config_info.type;
} else {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "language is NULL");
return TTS_CONFIG_ERROR_OPERATION_FAILED;
return TTS_CONFIG_ERROR_ENGINE_NOT_FOUND;
}
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
/* Check language is valid */
if (0 != tts_parser_set_voice(language, type)) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "Fail to save default voice");
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
memset(g_language, '\0', sizeof(g_language));
- g_config_info->language = g_language;
- strncpy(g_config_info->language, language, sizeof(g_language) - 1);
+ config_info.language = g_language;
+ strncpy(config_info.language, language, sizeof(g_language) - 1);
+
+ config_info.type = type;
- g_config_info->type = type;
+ if (0 != tts_parser_set_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to set configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
return 0;
}
if (NULL == value)
return TTS_CONFIG_ERROR_INVALID_PARAMETER;
- *value = g_config_info->auto_voice;
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
+ *value = config_info.auto_voice;
return 0;
}
return TTS_CONFIG_ERROR_INVALID_PARAMETER;
}
- if (g_config_info->auto_voice != value) {
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
+ if (config_info.auto_voice != value) {
/* Check language is valid */
if (0 != tts_parser_set_auto_voice(value)) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "Fail to save auto voice option");
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
- g_config_info->auto_voice = value;
+ config_info.auto_voice = value;
- if (true == g_config_info->auto_voice) {
+ if (true == config_info.auto_voice) {
__tts_config_set_auto_language();
}
}
+ if (0 != tts_parser_set_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to set configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
return 0;
}
return TTS_CONFIG_ERROR_INVALID_PARAMETER;
}
- *value = g_config_info->speech_rate;
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
+ *value = config_info.speech_rate;
return 0;
}
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
- g_config_info->speech_rate = value;
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+ config_info.speech_rate = value;
+ if (0 != tts_parser_set_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to set configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
} else {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[Config ERROR] Speech rate is invalid : %d", value);
}
/* Get a first item */
iter = g_slist_nth(g_engine_list, 0);
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
while (NULL != iter) {
engine_info = iter->data;
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
- if (0 != strcmp(g_config_info->engine_id, engine_info->uuid)) {
+ if (0 != strcmp(config_info.engine_id, engine_info->uuid)) {
iter = g_slist_next(iter);
continue;
}
}
}
- *value = g_config_info->pitch;
+ *value = config_info.pitch;
return 0;
}
/* Get a first item */
iter = g_slist_nth(g_engine_list, 0);
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
while (NULL != iter) {
engine_info = iter->data;
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
- if (0 != strcmp(g_config_info->engine_id, engine_info->uuid)) {
+ if (0 != strcmp(config_info.engine_id, engine_info->uuid)) {
iter = g_slist_next(iter);
continue;
}
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
- g_config_info->pitch = value;
+ config_info.pitch = value;
+ if (0 != tts_parser_set_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to set configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
return 0;
}
if (NULL == value)
return TTS_CONFIG_ERROR_INVALID_PARAMETER;
- else
- *value = g_config_info->bg_volume_ratio;
+
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
+ *value = config_info.bg_volume_ratio;
return 0;
}
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
- g_config_info->bg_volume_ratio = value;
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
+ config_info.bg_volume_ratio = value;
+
+ if (0 != tts_parser_set_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to set configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
return 0;
}
if (NULL == language)
return false;
- if (0 == strlen(g_config_info->engine_id)) {
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
+ if (0 == strlen(config_info.engine_id)) {
SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Default engine id is NULL");
return false;
}
continue;
}
- if (0 != strcmp(g_config_info->engine_id, engine_info->uuid)) {
+ if (0 != strcmp(config_info.engine_id, engine_info->uuid)) {
iter = g_slist_next(iter);
continue;
}
/* Get a first item */
iter = g_slist_nth(g_engine_list, 0);
+ tts_config_s config_info;
+ if (0 != tts_parser_get_config_info(&config_info)){
+ SLOG(LOG_ERROR, TAG_TTSCONFIG, "[ERROR] Fail to get configure information");
+ return TTS_CONFIG_ERROR_INVALID_PARAMETER;
+ }
+
while (NULL != iter) {
engine_info = iter->data;
return TTS_CONFIG_ERROR_OPERATION_FAILED;
}
- if (0 != strcmp(g_config_info->engine_id, engine_info->uuid)) {
+ if (0 != strcmp(config_info.engine_id, engine_info->uuid)) {
iter = g_slist_next(iter);
continue;
}