[ACR-1449] Add new api to set audio type
[platform/core/uifw/stt.git] / server / sttd_engine_agent.c
index 09b8269..f6a7ac0 100644 (file)
@@ -302,7 +302,7 @@ int sttd_engine_agent_load_current_engine(stte_request_callback_s *callback)
        /* get current engine from config */
        if (0 == sttd_config_get_default_engine(&cur_engine_uuid)) {
                SECURE_SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] current engine from config : %s", cur_engine_uuid);
-               if (NULL != g_engine_info->engine_uuid) {
+               if (NULL != g_engine_info->engine_uuid && NULL != cur_engine_uuid) {
                        if (!strcmp(g_engine_info->engine_uuid, cur_engine_uuid)) {
                                is_default_engine = true;
                        }
@@ -316,9 +316,9 @@ int sttd_engine_agent_load_current_engine(stte_request_callback_s *callback)
        }
 
        if (false == is_default_engine) {
-               SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Current engine is not Default engine");
+               SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Current engine is not Default engine");
        } else {
-               SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Current engine is Default engine");
+               SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Current engine is Default engine");
        }
 
        /* Load engine */
@@ -361,7 +361,7 @@ int sttd_engine_agent_load_current_engine(stte_request_callback_s *callback)
        int rate;
        int channels;
 
-       ret = stt_engine_get_audio_type(&atype, &rate, &channels);
+       ret = stt_engine_get_audio_format(&atype, &rate, &channels);
        if (0 != ret) {
                SECURE_SLOG(LOG_ERROR, TAG_STTD, "[Engine Agent ERROR] Fail to get audio type : %d %s", g_engine_info->engine_name);
                return ret;
@@ -375,7 +375,7 @@ int sttd_engine_agent_load_current_engine(stte_request_callback_s *callback)
 #endif
 
        g_engine_info->is_loaded = true;
-       SECURE_SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent SUCCESS] The %s has been loaded !!!", g_engine_info->engine_name);
+       SECURE_SLOG(LOG_INFO, TAG_STTD, "[Engine Agent SUCCESS] The %s has been loaded !!!", g_engine_info->engine_name);
 
        return 0;
 }
@@ -700,14 +700,14 @@ int __set_option(sttengine_info_s* engine, int silence)
        if (engine->support_silence_detection) {
                if (2 == silence) {
                        /* default option set */
-                       if (g_default_silence_detected != engine->silence_detection) {
+//                     if (g_default_silence_detected != engine->silence_detection) {
                                if (0 != stt_engine_set_silence_detection(g_default_silence_detected)) {
                                        SECURE_SLOG(LOG_ERROR, TAG_STTD, "[Engine Agent ERROR] Fail to set silence detection : %s", g_default_silence_detected ? "true" : "false");
                                } else {
                                        engine->silence_detection = g_default_silence_detected;
                                        SECURE_SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Set silence detection : %s", g_default_silence_detected ? "true" : "false");
                                }
-                       }
+//                     }
                } else {
                        if (silence != engine->silence_detection) {
                                if (0 != stt_engine_set_silence_detection(silence)) {
@@ -751,7 +751,7 @@ int sttd_engine_agent_recognize_start_engine(int uid, const char* lang, const ch
                return STTD_ERROR_OPERATION_FAILED;
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "g_default_language %s", g_default_language);
+       SLOG(LOG_INFO, TAG_STTD, "g_default_language %s", g_default_language);
 
        int ret;
        char* temp = NULL;
@@ -774,13 +774,12 @@ int sttd_engine_agent_recognize_start_engine(int uid, const char* lang, const ch
                temp = strdup(lang);
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Start engine");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Start engine");
 
        ret = stt_engine_recognize_start(temp, recognition_type, appid, credential, user_param);
        if (NULL != temp)       free(temp);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_STTD, "[Engine Agent ERROR] Recognition start error(%d)", ret);
-               sttd_recorder_destroy();
                return ret;
        }
 
@@ -790,17 +789,17 @@ int sttd_engine_agent_recognize_start_engine(int uid, const char* lang, const ch
        int rate;
        int channels;
 
-       ret = stt_engine_get_audio_type(&atype, &rate, &channels);
+       ret = stt_engine_get_audio_format(&atype, &rate, &channels);
        if (0 != ret) {
-               SECURE_SLOG(LOG_ERROR, TAG_STTD, "[Engine Agent ERROR] Fail to get audio type : %s", g_engine_info->engine_name);
+               SECURE_SLOG(LOG_ERROR, TAG_STTD, "[Engine Agent ERROR] Fail to get audio format : %s", g_engine_info->engine_name);
                return ret;
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Create recorder");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Create recorder");
 
        ret = sttd_recorder_create(atype, channels, rate);
        if (0 != ret) {
-               SECURE_SLOG(LOG_ERROR, TAG_STTD, "[Engine Agent ERROR] Fail to create recorder : %s", g_engine_info->engine_name);
+               SECURE_SLOG(LOG_ERROR, TAG_STTD, "[Engine Agent ERROR] Fail to create format : %s", g_engine_info->engine_name);
                return ret;
        }
 #endif
@@ -831,7 +830,7 @@ int sttd_engine_agent_recognize_start_recorder(int uid)
                return STTD_ERROR_OPERATION_FAILED;
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Start recorder");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Start recorder");
 
        int ret;
        ret = sttd_recorder_start(uid);
@@ -857,7 +856,7 @@ int sttd_engine_agent_recognize_start_file(int uid, const char* filepath)
                return STTD_ERROR_OPERATION_FAILED;
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Start recorder");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Start recorder");
 
        int ret;
        ret = sttd_recorder_start_file(uid, filepath);
@@ -918,7 +917,7 @@ int sttd_engine_agent_recognize_stop_file()
                return STTD_ERROR_OPERATION_FAILED;
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Stop recorder");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Stop recorder");
        int ret;
        ret = sttd_recorder_stop_file();
        if (0 != ret) {
@@ -927,12 +926,12 @@ int sttd_engine_agent_recognize_stop_file()
        }
 
 #ifdef AUDIO_CREATE_ON_START
-       SECURE_SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Destroy recorder");
+       SECURE_SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Destroy recorder");
        if (0 != sttd_recorder_destroy())
                SECURE_SLOG(LOG_WARN, TAG_STTD, "[Engine Agent] Fail to destroy recorder");
 #endif
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent Success] Stop recorder");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent Success] Stop recorder");
        return 0;
 }
 
@@ -953,7 +952,7 @@ int sttd_engine_agent_recognize_stop_recorder()
                return STTD_ERROR_OPERATION_FAILED;
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Stop recorder");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Stop recorder");
        int ret;
        ret = sttd_recorder_stop();
        if (0 != ret) {
@@ -967,7 +966,7 @@ int sttd_engine_agent_recognize_stop_recorder()
                SECURE_SLOG(LOG_WARN, TAG_STTD, "[Engine Agent] Fail to destroy recorder");
 #endif
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent Success] Stop recorder");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent Success] Stop recorder");
        return 0;
 }
 
@@ -988,7 +987,7 @@ int sttd_engine_agent_recognize_stop_engine()
                return STTD_ERROR_OPERATION_FAILED;
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Stop engine");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Stop engine");
 
        int ret;
        ret = stt_engine_recognize_stop();
@@ -997,7 +996,7 @@ int sttd_engine_agent_recognize_stop_engine()
                return ret;
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent Success] Stop engine");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent Success] Stop engine");
 
        return 0;
 }
@@ -1019,7 +1018,7 @@ int sttd_engine_agent_recognize_cancel()
                return STTD_ERROR_OPERATION_FAILED;
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Cancel engine");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Cancel engine");
 
        int ret;
        ret = stt_engine_recognize_cancel();
@@ -1028,7 +1027,7 @@ int sttd_engine_agent_recognize_cancel()
                return ret;
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Stop recorder");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Stop recorder");
 
        ret = sttd_recorder_stop();
        if (0 != ret) {
@@ -1037,12 +1036,12 @@ int sttd_engine_agent_recognize_cancel()
        }
 
 #ifdef AUDIO_CREATE_ON_START
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Destroy recorder");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Destroy recorder");
        if (0 != sttd_recorder_destroy())
                SECURE_SLOG(LOG_WARN, TAG_STTD, "[Engine Agent] Fail to destroy recorder");
 #endif
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent Success] Cancel recognition");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent Success] Cancel recognition");
 
        return 0;
 }
@@ -1071,7 +1070,7 @@ int sttd_engine_agent_set_default_engine(const char* engine_uuid)
                return STTD_ERROR_ENGINE_NOT_FOUND;
        }
 
-       SECURE_SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Default engine uuid(%s)", g_engine_info->engine_uuid);
+       SECURE_SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Default engine uuid(%s)", g_engine_info->engine_uuid);
 
        return 0;
 }
@@ -1133,13 +1132,13 @@ int sttd_engine_agent_check_app_agreed(const char* appid, bool* result)
        }
 
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Get engine right : %s", *result ? "true" : "false");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Get engine right : %s", *result ? "true" : "false");
        return 0;
 }
 
 static void __recorder_destroy_by_error_result(void *data)
 {
-       SLOG(LOG_DEBUG, TAG_STTD, "[Engine Agent] Destroy recorder");
+       SLOG(LOG_INFO, TAG_STTD, "[Engine Agent] Destroy recorder");
        if (0 != sttd_recorder_destroy())
                SECURE_SLOG(LOG_WARN, TAG_STTD, "[Engine Agent] Fail to destroy recorder");
 
@@ -1156,7 +1155,7 @@ int sttd_engine_agent_send_result(stte_result_event_e event, const char* type, c
                return STTD_ERROR_OPERATION_FAILED;
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Server] === Result time callback ===");
+       SLOG(LOG_INFO, TAG_STTD, "[Server] === Result time callback ===");
 
        if (NULL != time_info) {
                /* Get the time info */
@@ -1167,7 +1166,7 @@ int sttd_engine_agent_send_result(stte_result_event_e event, const char* type, c
                }
        }
 
-       SLOG(LOG_DEBUG, TAG_STTD, "[Server] ============================");
+       SLOG(LOG_INFO, TAG_STTD, "[Server] ============================");
 
        ret = g_result_cb(event, type, result, result_count, msg, user_data);
 
@@ -1188,6 +1187,7 @@ int sttd_engine_agent_send_error(stte_error_e error, const char* msg)
        char* err_msg = NULL;
        int ret = STTD_ERROR_NONE;
 
+
        if (NULL != msg) {
                err_msg = strdup(msg);
        }
@@ -1195,13 +1195,6 @@ int sttd_engine_agent_send_error(stte_error_e error, const char* msg)
        ret = sttdc_send_error_signal(uid, error, err_msg);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_STTD, "[Server ERROR] Fail to send error info.");
-
-               if (NULL != err_msg) {
-                       free(err_msg);
-                       err_msg = NULL;
-               }
-
-               return ret;
        }
 
        if (NULL != err_msg) {
@@ -1253,3 +1246,30 @@ int __log_enginelist()
 
        return 0;
 }
+
+int sttd_engine_agent_set_audio_type(const char* audio_type)
+{
+       if (false == g_agent_init) {
+               SLOG(LOG_ERROR, TAG_STTD, "[Engine Agent ERROR] Not Initialized");
+               return STTD_ERROR_OPERATION_FAILED;
+       }
+
+       if (NULL == g_engine_info) {
+               SECURE_SLOG(LOG_ERROR, TAG_STTD, "[Engine Agent ERROR] The engine of is not valid");
+               return STTD_ERROR_INVALID_PARAMETER;
+       }
+
+       if (false == g_engine_info->is_loaded) {
+               SLOG(LOG_ERROR, TAG_STTD, "[Engine Agent ERROR] Not loaded engine");
+               return STTD_ERROR_OPERATION_FAILED;
+       }
+
+       SLOG(LOG_INFO, TAG_STTD, "[Server Info] Set audio type(%s)", audio_type);
+
+       int ret;
+       ret = stt_engine_set_audio_type(audio_type);
+       if (0 != ret) {
+               SLOG(LOG_ERROR, TAG_STTD, "[Engine Agent ERROR] set audio type error(%d)", ret);
+       }
+       return ret;
+}