#ifndef LVCSR_API_H #define LVCSR_API_H #ifdef WIN32 #define LVCSR_LIBRARY_API __declspec(dllexport) #define snprintf sprintf_s #else #define LVCSR_LIBRARY_API #endif #define MAX_CHANNEL 5000 #define MAX_NAME_SIZE 128 /** module */ #define MODULE_USE_ENGINE_GENERAL 0X0001 // 1 #define MODULE_USE_ENGINE_SPACING 0X0002 // 2 #define MODULE_USE_PLUGIN_KWD 0x0010 // 16 #define MODULE_USE_PLUGIN_ADDR 0x0020 // 32 #define MODULE_USE_PLUGIN_PHONICS 0x0030 // 48 #define MODULE_USE_PLUGIN_ITN 0x0040 // 64 #define MODULE_USE_ENGINE_GENERAL_PLUGIN_NONE 0X0001 // 1 #define MODULE_USE_ENGINE_GENERAL_PLUGIN_KWD 0X0011 // 17 #define MODULE_USE_ENGINE_GENERAL_PLUGIN_ADDR 0X0021 // 33 #define MODULE_USE_ENGINE_GENERAL_PLUGIN_PHONICS 0X0031 // 49 #define MODULE_USE_ENGINE_GENERAL_PLUGIN_ITN 0X0041 // 65 #define MODULE_USE_ENGINE_SPACING_PLUGIN_NONE 0X0002 // 2 #define MODULE_USE_ENGINE_SPACING_PLUGIN_KWD 0X0012 // 18 #define MODULE_USE_ENGINE_SPACING_PLUGIN_ADDR 0X0022 // 34 #define MODULE_USE_ENGINE_SPACING_PLUGIN_PHONICS 0X0032 // 50 #define MODULE_USE_ENGINE_SPACING_PLUGIN_ITN 0X0042 // 66 typedef enum _LVCSR_RESULT { LVCSR_SUCCESS = 0, // ���� LVCSR_FAIL = -1, // ���� LVCSR_TIMEOUT = -2, // �ð��ʰ� } LVCSR_RESULT; typedef enum _LVCSR_EPD_INFO { RECEIV_OK = 0, // ���� ���� - ������ ���������� �ް� ��� ������� ���� RECEIV_OK_SPEECH = 1, // Start Point Detect - ������ ���������� �ް� ��� ������� ���� �̸� "�����̶�� �Ǵܵ� �������� ���´�. EPD_FOUND = 2, // ������ �� ���� - �����ν� �������� ���� ������ �����Ͽ� ���� �����϶�� ���� START_TIME_OVER = 3, // ù�� ���� ���� - ������ �ð����� ������ ���� ù�� ���� ���п� ���� ���� DURATION_TIME_OVER = 4, // ���� ���� ���� - ������ �ð����� ���� ���� ���п� ���� ���� SECTION_FOUND = 5, // ���� �������� �Ϸ�(���� EPD Ȱ��ȭ�� ����). ��� ������ ���� ��û. EPD_ERROR = 9, // EPD ���� �� } LVCSR_EPD_INFO; typedef enum _LVCSR_TYPE_CODEC { CODEC_RAW_8K = 0, // 8KHz ����� ����(�̾���) CODEC_RAW_16K = 1, // 16KHz ����� ����(�̾���) - 16K ������ ��� ��� ���� CODEC_ULAW_8K = 2, // G.711 �ڵ��� �̿��� ���� ������� �������� ǥ�� ä�� ��� CODEC_ALAW_8K = 3, // G.711 �ڵ��� �̿��� ���� ������� �ϾƸ�ī �� �Ϻ� ��� ǥ�� ä�� ��� CODEC_SPEEX_16K = 4, // ������ ���� ���ߵ� ��Ư�� ����� ���� ���� } LVCSR_TYPE_CODEC; typedef enum _LVCSR_SET_CHAR { CHAR_SET_EUCKR = 0, // EUC-KR CHAR_SET_UTF8 = 1, // UTF-8 } LVCSR_SET_CHARSET; typedef enum _LVCSR_USED_EPD { EPD_USED_OFF = 0, // EPD ��� �̻�� SERVER_EPD_USED_ON = 1, // SERVER EPD ON(LVCSR_RECOG_MID_RESULT ��� �� ����) ENGINE_EPD_USED_WITH_DETECTOR_MID_RESULT = 2, // ENGINE EPD ON(LVCSR_RECOG_MID_RESULT ��� ���� - ENGINE EPD ����) ENGINE_EPD_USED_WITH_CONTINUE_MID_RESULT = 3, // ENGINE EPD ON(LVCSR_RECOG_MID_RESULT ��� ���� - ENGINE EPD ����<���>) } LVCSR_USED_EPD; typedef enum _LVCSR_USED_SCORE { SCORE_USED_OFF = 0, // ���� �̻�� SCORE_USED_ON = 1, // ���� ��� } LVCSR_USED_SCORE; typedef enum _LVCSR_USED_WORD { WORD_USED_OFF = 0, // ���� �νķ� ���(�ܾ� �νķ� �̻��) WORD_USED_ON = 1, // �ܾ� �νķ� ��� } LVCSR_USED_WORD; typedef enum _LVCSR_TYPE_ADDR { TYPE_NONE = 0, // �� ���� JIBUN_ADDR = 1, // �����ּ�(������/������ �ּ�ü���̸� ���� ���� ��� �Ǵ� POI) JIBUN_ADDR_KEY = 2, // �����ּ�(������/������ �ּ�ü���̸� ������ �ִ� ���) ROAD_ADDR = 3, // ���θ��ּ�(�ǹ���ȣ�� ���� ��� �Ǵ� POI) ROAD_ADDR_KEY = 4, // ���θ��ּ�(�ǹ���ȣ�� �ִ� ���) } LVCSR_TYPE_ADDR; typedef enum _LVCSR_TYPE_CHANNEL { ASR_STAT_IDLE = 0, // ������ ASR_STAT_WAIT = 1, // ������ ASR_STAT_WORK = 2, // �νĻ��� ASR_STAT_FAIL = 3, // �������� } LVCSR_TYPE_CHANNEL; typedef enum _LVCSR_USED_SSL { SSL_USED_OFF = 0, // SSL �̻�� SSL_USED_ON = 1, // SSL ��� } LVCSR_USED_SSL; typedef enum _LVCSR_SSL_RESULT { SSL_SUCCESS = 1, // SSL ���� SSL_FAIL = -1, // SSL ���� SSL_NOT_FOUND_CRT = -2, // ������ ���� } LVCSR_SSL_RESULT; typedef enum _LVCSR_USED_CRT_CHECK { CRT_CHECK_OFF = 0, // ������ ��üũ CRT_CHECK_ON = 1, // ������ üũ } LVCSR_USED_CRT_CHECK; typedef enum _LVCSR_RESULT_CODE { STT_WARNING = -1, // STT ��� ��� STT_FAILED = 0, // STT ��� ���� STT_SUCCESS = 1, // STT ��� ���� } LVCSR_RESULT_CODE; typedef enum _LVCSR_RESULT_TYPE { STT_TYPE = 0, // STT ��� STT Ÿ�� PHONICS_TYPE = 1, // STT ��� PHONICS Ÿ�� } LVCSR_RESULT_TYPE; typedef struct _LVCSR_DATA_PHONEME { long long nPhTokenLen; // ���� �ν� ��� ���� char* pPhToken; // ���� �ν� ��� long long nDuration; // ��� ���� ����( ms ) double dScore; // ���� ���� } LVCSR_DATA_PHONEME; typedef struct _LVCSR_DATA_RESULT { long long nTokenLen; // �ܾ� ��� ���� char* pTokenStr; // �ܾ� ��� long long nStart; // ���� ���� ����( ms ) long long nEnd; // ���� ���� ����( ms ) double dScore; // �ܾ� ���� long long nResultPhCnt; // ���� ���� ����ü ���� LVCSR_DATA_PHONEME* pResultPhoneme; // ���� ���� ����ü } LVCSR_DATA_RESULT; typedef struct _LVCSR_DATA_EPD { long long nStart; // EPD ���� ����( ms ) long long nEnd; // EPD ���� ����( ms ) } LVCSR_DATA_EPD; typedef struct _LVCSR_DATA_CHAR_TIME { long long nCharSec; // �� ���� �ð�( Sec ) } LVCSR_DATA_CHAR_TIME; typedef struct _LVCSR_DATA_WAVE_FORM { long long nWaveFormSize; // ���� ũ�� ���� } LVCSR_DATA_WAVE_FORM; typedef struct _LVCSR_DATA_CHAR_INFO { long long nCharacterSecSum; // �ʴ� �ν� ��� ���� ���� double dCharacterPerSec; // �ʴ� �ܾ� �� �ӵ� } LVCSR_DATA_CHAR_INFO; typedef struct _LVCSR_RECOG_ADD_INFO { long long nCharacterSum; // �ν� ��� ���� ���� long long nEpsTime; // ���� �� �ð� long long nNoiseTime; // �� �� �ð� long long nTotalTime; // ��ü �ð� double dCharacterTotPerSec; // �ʴ� �� �ӵ� long long nCount; // ���� ����ü ���� LVCSR_DATA_WAVE_FORM* pDataWaveForm; // ���� ���� ����ü long long nCharCount; // �ʴ� �� �ӵ� ����ü ���� LVCSR_DATA_CHAR_INFO* pDataCharInfo; // �ʴ� �� �ӵ� ���� ����ü } LVCSR_RECOG_ADD_INFO; typedef struct _LVCSR_DATA_NBEST_RESULT { long long nResultLen; // �νİ�� ���� char* pResult; // �ν� ��� double dConfidScore; // �ν� Ȯ���� long long nCount; // �νİ�� ���� ����ü ���� LVCSR_DATA_RESULT* pDataResult; // �νİ�� ���� ����ü } LVCSR_DATA_NBEST_RESULT; typedef struct _LVCSR_RECOG_NBEST_RESULT { long long nCount; // �νİ�� NBEST ����ü ���� LVCSR_DATA_NBEST_RESULT* pDataNbestResult; // �νİ�� NBEST ����ü LVCSR_DATA_EPD* pResultEPD; // EPD ����ü } LVCSR_RECOG_NBEST_RESULT; // PHONICS �߰� typedef struct _LVCSR_DATA_PHONICS { long long nPhonicsLen; // Phonics �ؽ�Ʈ ���� char* pPhonicsStr; // Phonics �ؽ�Ʈ } LVCSR_DATA_PHONICS; typedef struct _LVCSR_RECOG_PHONICS_RESULT { long long nResultLen; // �νİ�� ���� char* pResult; // �ν� ��� long long nJsonLen; // Json ���� char* pJson; // Json ��� double dConfidScore; // �ν� Ȯ���� long long nDataCnt; // �νİ�� ���� ����ü ���� LVCSR_DATA_RESULT* pDataResult; // �νİ�� ���� ����ü LVCSR_DATA_EPD* pResultEPD; // EPD ����ü } LVCSR_RECOG_PHONICS_RESULT; typedef struct _LVCSR_DATA_SEP_ADDR { long long nSidoLen; // ��/�� ���� char* pSidoStr; // ��/�� long long nSigunguMainLen; // ��/��/�� main ���� char* pSigunguMainStr; // ��/��/�� main long long nSigunguSubLen; // ��/��/�� sub ���� char* pSigunguSubStr; // ��/��/�� sub long long nDongLen; // ��/��/�� ���� char* pDongStr; // ��/��/�� long long nLiLen; // �� ���� char* pLiStr; // �� long long nJibunLen; // ���� ���� char* pJibunStr; // ���� long long nRoadNameLen; // ���θ� ���� char* pRoadNameStr; // ���θ� long long nBldgNoLen; // �ǹ���ȣ ���� char* pBldgNoStr; // �ǹ���ȣ long long nPoiNameLen; // POI�� ���� char* pPoiNameStr; // POI�� } LVCSR_DATA_SEP_ADDR; typedef struct _LVCSR_DATA_ADDR { LVCSR_TYPE_ADDR nCorrectType; // ���� ���� long long nZipcodeLen; // ������ȣ ���� char* pZipcodeStr; // ������ȣ long long nMainAddressLen; // �⺻�ּ� ���� char* pMainAddressStr; // �⺻�ּ� long long nAuxAddressLen; // ���ּ� ���� char* pAuxAddressStr; // ���ּ� long long nAdditionalSpeechLen; // �������ּ� ����(�߰����ּ�) char* pAdditionalSpeechStr; // �������ּ� LVCSR_DATA_SEP_ADDR pSepAddr; // �и��� ��� �ּ� ����ü } LVCSR_DATA_ADDR; typedef struct _LVCSR_DATA_KWD { long long nTokenLen; // �ܾ� ��� ���� char* pTokenStr; // �ܾ� ��� long long nSymbolLen; // �ɺ� ��� ���� char* pSymbolStr; // �ɺ� ��� long long nStart; // ���� ���� ����( ms ) long long nEnd; // ���� ���� ����( ms ) double dScore; // �ܾ� ���� } LVCSR_DATA_KWD; typedef struct _LVCSR_DATA_SMI { long long nSmiLen; // �ڸ� ��� ���� char* pSmiStr; // �ڸ� ��� } LVCSR_DATA_SMI; typedef struct _LVCSR_RECOG_RESULT { long long nResultLen; // �νİ�� ���� char* pResult; // �ν� ��� double dConfidScore; // �ν� Ȯ���� long long nCount; // �νİ�� ���� ����ü ���� LVCSR_DATA_RESULT* pDataResult; // �νİ�� ���� ����ü long long nSentCount; // ������ ���� ����ü ���� LVCSR_DATA_RESULT* pDataSentResult; // ������ ���� ����ü LVCSR_DATA_EPD* pResultEPD; // EPD ����ü long long nAddrUsed; // ADDR Used LVCSR_DATA_ADDR* pResultADDR; // ADDR ����ü long long nKWDCount; // KWD ����ü ���� LVCSR_DATA_KWD* pResultKWD; // KWD ����ü long long nSMIUsed; // SMI ��뿩�� LVCSR_DATA_SMI* pResultSMI; // SMI ����ü } LVCSR_RECOG_RESULT; typedef struct _LVCSR_RECOG_MID_RESULT { long long nResultLen; // �߰� �νİ�� ���� char* pResult; // �߰� �νİ�� int bEngineDetectionFlag; // Engine EPD Flag long long nCount; // �νİ�� ���� ����ü ���� LVCSR_DATA_RESULT* pDataResult; // �νİ�� ���� ����ü } LVCSR_RECOG_MID_RESULT; typedef struct _LVCSR_DATA_TIMEOUT { long long nStartTimeout; // ������ �ð� ���� ������ �Էµ��� ���� ��� �� long long nDurationTimeout; // ������ �ð��� �Ѱ� ������ ��� ���� ��� �� } LVCSR_DATA_TIMEOUT; typedef struct _LVCSR_DATA_MARGIN { float fEpdMargin; // ���� ���� �ִ� �ð� } LVCSR_DATA_MARGIN; typedef struct _LVCSR_DATA_TRANSACTION { long long nTransactionIdLen; // TransactionId ���� char* pTransactionId; // TransactionId ���� } LVCSR_DATA_TRANSACTION; typedef struct _LVCSR_DATA_SERVERTIMEOUT { long long nASRTimeOut; // ���� TimeOut ���� long long nMGRTimeOut; // ����� TimeOut ���� } LVCSR_DATA_SERVERTIMEOUT; typedef struct _LVCSR_DATA_AUTHENTICATION { long long nAuthenticationLen; // �������� ���� char* pAuthentication; // �������� } LVCSR_DATA_AUTHENTICATION; typedef struct _LVCSR_DATA_READTIMEOUT { long long nReadTimeOut; // ReadTimeOut ���� } LVCSR_DATA_READTIMEOUT; typedef struct _LVCSR_DATA_INFO { long long nModelId; // �� ID long long nKwdId; // KWD�� ID LVCSR_TYPE_CODEC nCodecType; // CODEC Ÿ�� LVCSR_SET_CHARSET nCharSet; // ij���� �� LVCSR_USED_EPD bEpdUsed; // EPD ��뿩�� LVCSR_USED_SCORE bScoreUsed; // SCORE ��� ���� } LVCSR_DATA_INFO; typedef struct _LVCSR_DATA_RESOURCE { double dNetworkUsage; // Network ��뷮 int nCPUUsage; // CPU ����� int nGPUUsage; // GPU ����� int nMemUsage; // MEM ����� int nDiskUsage; // DISK ����� } LVCSR_DATA_RESOURCE; typedef struct _LVCSR_CHANNEL_LIST { long long nChannelID; // ä�� ID LVCSR_TYPE_CHANNEL nChannelStat; // ä�� ���� } LVCSR_CHANNEL_LIST; typedef struct _LVCSR_DATA_CHANNEL { long long nChannelCnt; // ��ü ä�� �� long long nUsedCnt; // ��� ä�� �� LVCSR_CHANNEL_LIST* pChannelInfo; // ä�� ���� ���� } LVCSR_DATA_CHANNEL; typedef struct _LVCSR_KWD_LIST { long long nKwdID; // KWD�� ID long long nKwdNameLen; // KWD�� �̸� ���� char* pKwdName; // KWD�� �̸� } LVCSR_KWD_LIST; typedef struct _LVCSR_MODEL_LIST { long long nModelID; // �νĸ� ID long long nModelNameLen; // �νĸ� �̸� ���� char* pModelName; // �νĸ� �̸� long long nModelType; // �νĸ� Ÿ��(���� ���) long long nSamplingRate; // �νĸ� SampleRate float fAcousticScale; // ���Ⱑ��ġ ���� long long nKwdCnt; // KWD �� ���� LVCSR_KWD_LIST* pKwdInfo; // KWD �� ���� } LVCSR_MODEL_LIST; typedef struct _LVCSR_DATA_MODEL { long long nModelCnt; // �� �� LVCSR_MODEL_LIST* pModelInfo; // �� ���� } LVCSR_DATA_MODEL; typedef struct _LVCSR_DATA_DATETERM { long long nStartDate; // �������� long long nEndDate; // �������� } LVCSR_DATA_DATETERM; typedef struct _LVCSR_STATDATE_LIST { long long nStatTime; // ��� �ð� unsigned int nTotalSuccess; // �� ���� �Ǽ� unsigned int nTotalFail; // �� ���� �Ǽ� unsigned int nMaxClientFail; // �� ���� �Ǽ�(max client error) unsigned int nEtcFail; // �� ���� �Ǽ�(max client error�� ������ ����) unsigned long nTotalBytes; // �� ���� ũ�� (Bytes) float fTotalElapsedTime; // �� �νİ�� �ҿ�ð� float fMaxElapsedTime; // �ִ� �νİ�� �ҿ� �ð� unsigned int nMaxElapsedBytes; // �ִ� �νİ�� �ҿ� �ð� ��� ���� ũ�� (Bytes) unsigned int nMaxBytesSize; // �ִ� ���� ũ�� (Bytes) float fMaxBytesElapsed; // �ִ� ���� ũ�� ��� �νİ�� �ҿ� �ð� } LVCSR_STATDATE_LIST; typedef struct _LVCSR_DATA_STATDATE { long long nStatDateCnt; // ��� �� LVCSR_STATDATE_LIST* pStatDateInfo; // ��� ���� } LVCSR_DATA_STATDATE; typedef struct _LVCSR_DATA_KWD_RESULT { char szToken[MAX_NAME_SIZE]; // �ܾ� �νİ�� char szSymbol[MAX_NAME_SIZE]; // �ɺ� �νİ�� } LVCSR_DATA_KWD_RESULT; typedef struct _LVCSR_DATA_WORD { long long nModelId; // �νĸ� ID long long nKWDNameLen; // KWD�� �̸� ���� char* pKWDName; // KWD�� �̸� long long nKWDResultCnt; // KWD ����ü ���� LVCSR_DATA_KWD_RESULT* pKWDResult; // KWD ����ü } LVCSR_DATA_WORD; typedef struct _LVCSR_DATA_WORD_KWD { long long nModelId; // �νĸ� ID long long nKWDNameLen; // KWD�� �̸� ���� char* pKWDName; // KWD�� �̸� } LVCSR_DATA_WORD_KWD; typedef struct _LVCSR_DATA_LSTM { long long nRefLen; // ���� ��� ���� char* pRefStr; // ���� ��� long long nHypLen; // �ν� ��� ���� char* pHypStr; // �ν� ��� LVCSR_SET_CHARSET nCharSet; // ij���� �� LVCSR_USED_WORD bWordUsed; // �ܾ� �νķ� ��� ���� } LVCSR_DATA_LSTM; typedef struct _LVCSR_LSTM_SUMMARY { long long nTotal; // ��ü ���� long long nInsert; // ���� ���� long long nDelete; // ���� ���� long long nSubstitute; // ��ġ ���� long long nMatch; // ��ġ ���� double dErrorRate; // ������ double dRecgRate; // �νķ� long long nDistance; // ���� ���� } LVCSR_LSTM_SUMMARY; typedef struct _LVCSR_DATA_ALIGN { char pTokenStr; // Align ��� } LVCSR_DATA_ALIGN; typedef struct _LVCSR_DATA_VECTOR { long long nTokenLen; // �ܾ� ��� ���� char* pTokenStr; // �ܾ� ��� } LVCSR_DATA_VECTOR; typedef struct _LVCSR_LSTM_MATCH { long long pMatchCnt; // ����ü ���� long long nAlignLen; // Align ���ڿ����� char* pAlignStr; // Align ���ڿ� LVCSR_DATA_ALIGN* pDataAlign; // Align ����ü long long nRefLen; // Ref ���ڿ� ���� char* pRefStr; // Ref ���ڿ� LVCSR_DATA_VECTOR* pRefResult; // Ref ����ü long long nHypLen; // Hyp ���ڿ� ���� char* pHypStr; // Hyp ���ڿ� LVCSR_DATA_VECTOR* pHypResult; // Hyp ����ü } LVCSR_LSTM_MATCH; typedef struct _LVCSR_LSTM_RESULT { LVCSR_LSTM_SUMMARY pLstmSummary; // Levenshtein ��� ���� LVCSR_LSTM_MATCH pLstmMatch; // Levenshtein ���� ���� } LVCSR_LSTM_RESULT; typedef struct _CASR_HEAD_PACK { char CHID[6]; char RVD1; char TYPE; char RVD2; char LENG[10]; char RVD3; } CASR_HEAD_PACK; typedef struct _CRES_HEAD_PACK { char CHID[6]; //socket char RVD1; //���� char TYPE; //S char RVD2; //���� char KIND; //���� char RVD3; //���� char USED[2]; //�������� char RVD4; //���� char LENG[10]; //���� char RVD5; } CRES_HEAD_PACK; typedef struct ssl_st SSL; typedef struct ssl_ctx_st SSL_CTX; typedef struct _LVCSR_SOCK_TIMEOUT { long long nConnTIMEOUT; // Connection TimeOut(Sec) long long nReadTIMEOUT; // Read TimeOut(Sec) } LVCSR_SOCK_TIMEOUT; typedef struct _LVCSR_SOCK_HEAD { long uSock; // ���� ID SSL* pSSL; // SSL ���� // SSL �̻��� NULL�� SSL_CTX* pContext; // SSL Context ���� // SSL �̻��� NULL�� LVCSR_USED_SSL nFlag; // SSL ��� ���� LVCSR_USED_CRT_CHECK nCheck; // ������ üũ ���� LVCSR_SOCK_TIMEOUT pTimeOut; // ���� Ÿ�Ӿƿ� long nError; // SSL ���� ���� // SSL �̻��� 0�� } LVCSR_SOCK_HEAD; #ifdef __cplusplus extern "C" { #endif LVCSR_RESULT LVCSR_LIBRARY_API ASR_VERSION(); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_SSL(char* pCRT, char* pKEY, char* pCA, char* pPASS, LVCSR_SOCK_HEAD* pHEAD); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_OPEN(char* cHOST, long nPORT, long nConnTIMEOUT, long nReadTIMEOUT, LVCSR_SOCK_HEAD* pHEAD); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_CLOS(LVCSR_SOCK_HEAD* pHEAD); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_OPEN(LVCSR_SOCK_HEAD* pHEAD); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_CLOS(LVCSR_SOCK_HEAD* pHEAD); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_DATA(LVCSR_SOCK_HEAD* pHEAD, char* cBUFF, long nLENG, long bEND, LVCSR_EPD_INFO* pEpdInfo); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_RECOG_RESULT* pRecgResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_STR_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_RECOG_RESULT* pRecgResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_WORD_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_RECOG_RESULT* pRecgResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_SENT_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_RECOG_RESULT* pRecgResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_ADDR_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_RECOG_RESULT* pRecgResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_KWD_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_RECOG_RESULT* pRecgResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_SMI_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_RECOG_RESULT* pRecgResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_ADD_INFO(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_CHAR_TIME* pCharTime, LVCSR_RECOG_ADD_INFO* pRecgAddInfo); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_ADD_INFO_FREE(LVCSR_DATA_CHAR_TIME* pCharTime, LVCSR_RECOG_ADD_INFO* pRecgAddInfo); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_SET_PHONICS_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_PHONICS* pDataPhonics, LVCSR_RECOG_MID_RESULT* pRecgMidResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_SET_PHONICS_PROC_FREE(LVCSR_DATA_PHONICS* pDataPhonics, LVCSR_RECOG_MID_RESULT* pRecgMidResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_NBEST_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_RECOG_NBEST_RESULT* pRecgNbestResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_PHONICS_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_RECOG_PHONICS_RESULT* pRecgPhonicsResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_LIST_VIEW(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_MODEL* pDataModel); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_MID_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_RECOG_MID_RESULT* pRecgMidResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_MID_PHONICS_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_RECOG_MID_RESULT* pRecgMidResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_DET_PHONICS_PROC(LVCSR_SOCK_HEAD* pHEAD, LVCSR_RECOG_PHONICS_RESULT* pRecgPhonicsResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_SET_AUTH(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_AUTHENTICATION* pDataAuthentication); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_SET_READTIME(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_READTIMEOUT* pDataReadtimeout); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_SET_TRANS(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_TRANSACTION* pDataTransaction); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_SET_LIST(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_INFO* pDataInfo); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_SET_EPD_TIMEOUT(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_TIMEOUT* pDataTimeOut); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_SET_EPD_MARGIN(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_MARGIN* pDataMargin); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_SET_PHONICS(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_PHONICS* pDataPhonics); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RESOURCE(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_RESOURCE* pDataResource); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_CHANNEL(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_CHANNEL* pDataChannel); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_MODEL(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_MODEL* pDataModel); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_TIMEOUT(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_SERVERTIMEOUT* pDataServertimeout); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_STAT(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_DATETERM* pDataTerm, LVCSR_DATA_STATDATE* pDataStatDate); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_CREATE_WORD(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_WORD* pDataWord); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_DELETE_WORD(LVCSR_SOCK_HEAD* pHEAD, LVCSR_DATA_WORD_KWD* pDataWordKwd); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_CHANNEL_FREE(LVCSR_DATA_CHANNEL* pDataChannel); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_MODEL_FREE(LVCSR_DATA_MODEL* pDataModel); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_STAT_FREE(LVCSR_DATA_DATETERM* pDataTerm, LVCSR_DATA_STATDATE* pDataStatDate); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_LIST_VIEW_FREE(LVCSR_DATA_MODEL* pDataModel); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_MID_PROC_FREE(LVCSR_RECOG_MID_RESULT* pRecgMidResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_PROC_FREE(LVCSR_RECOG_RESULT* pRecgResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_NBEST_PROC_FREE(LVCSR_RECOG_NBEST_RESULT* pRecgNbestResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_RECG_PHONICS_PROC_FREE(LVCSR_RECOG_PHONICS_RESULT* pRecgPhonicsResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_LSTM(LVCSR_DATA_LSTM* pDataLstm, LVCSR_LSTM_RESULT* pDataLstmResult); LVCSR_RESULT LVCSR_LIBRARY_API ASR_SVC_LSTM_FREE(LVCSR_DATA_LSTM* pDataLstm, LVCSR_LSTM_RESULT* pDataLstmResult); #ifdef __cplusplus }; #endif #endif