| | |
| | | #endif |
| | | |
| | | // APIs for funasr |
| | | _FUNASRAPI FUNASR_HANDLE FunASRInit(const char* szModelDir, int nThreadNum, bool quantize, bool use_vad) |
| | | _FUNASRAPI FUNASR_HANDLE FunASRInit(const char* szModelDir, int nThreadNum, bool quantize, bool use_vad, bool use_punc) |
| | | { |
| | | Model* mm = create_model(szModelDir, nThreadNum, quantize, use_vad); |
| | | Model* mm = create_model(szModelDir, nThreadNum, quantize, use_vad, use_punc); |
| | | return mm; |
| | | } |
| | | |
| | | _FUNASRAPI FUNASR_RESULT FunASRRecogBuffer(FUNASR_HANDLE handle, const char* szBuf, int nLen, FUNASR_MODE Mode, QM_CALLBACK fnCallback, bool use_vad) |
| | | _FUNASRAPI FUNASR_RESULT FunASRRecogBuffer(FUNASR_HANDLE handle, const char* szBuf, int nLen, FUNASR_MODE Mode, QM_CALLBACK fnCallback, bool use_vad, bool use_punc) |
| | | { |
| | | Model* pRecogObj = (Model*)handle; |
| | | if (!pRecogObj) |
| | |
| | | if (fnCallback) |
| | | fnCallback(nStep, nTotal); |
| | | } |
| | | if(use_punc){ |
| | | string punc_res = pRecogObj->AddPunc((pResult->msg).c_str()); |
| | | pResult->msg = punc_res; |
| | | } |
| | | |
| | | return pResult; |
| | | } |
| | | |
| | | _FUNASRAPI FUNASR_RESULT FunASRRecogPCMBuffer(FUNASR_HANDLE handle, const char* szBuf, int nLen, int sampling_rate, FUNASR_MODE Mode, QM_CALLBACK fnCallback, bool use_vad) |
| | | _FUNASRAPI FUNASR_RESULT FunASRRecogPCMBuffer(FUNASR_HANDLE handle, const char* szBuf, int nLen, int sampling_rate, FUNASR_MODE Mode, QM_CALLBACK fnCallback, bool use_vad, bool use_punc) |
| | | { |
| | | Model* pRecogObj = (Model*)handle; |
| | | if (!pRecogObj) |
| | |
| | | if (fnCallback) |
| | | fnCallback(nStep, nTotal); |
| | | } |
| | | if(use_punc){ |
| | | string punc_res = pRecogObj->AddPunc((pResult->msg).c_str()); |
| | | pResult->msg = punc_res; |
| | | } |
| | | |
| | | return pResult; |
| | | } |
| | | |
| | | _FUNASRAPI FUNASR_RESULT FunASRRecogPCMFile(FUNASR_HANDLE handle, const char* szFileName, int sampling_rate, FUNASR_MODE Mode, QM_CALLBACK fnCallback, bool use_vad) |
| | | _FUNASRAPI FUNASR_RESULT FunASRRecogPCMFile(FUNASR_HANDLE handle, const char* szFileName, int sampling_rate, FUNASR_MODE Mode, QM_CALLBACK fnCallback, bool use_vad, bool use_punc) |
| | | { |
| | | Model* pRecogObj = (Model*)handle; |
| | | if (!pRecogObj) |
| | |
| | | if (fnCallback) |
| | | fnCallback(nStep, nTotal); |
| | | } |
| | | if(use_punc){ |
| | | string punc_res = pRecogObj->AddPunc((pResult->msg).c_str()); |
| | | pResult->msg = punc_res; |
| | | } |
| | | |
| | | return pResult; |
| | | } |
| | | |
| | | _FUNASRAPI FUNASR_RESULT FunASRRecogFile(FUNASR_HANDLE handle, const char* szWavfile, FUNASR_MODE Mode, QM_CALLBACK fnCallback, bool use_vad) |
| | | _FUNASRAPI FUNASR_RESULT FunASRRecogFile(FUNASR_HANDLE handle, const char* szWavfile, FUNASR_MODE Mode, QM_CALLBACK fnCallback, bool use_vad, bool use_punc) |
| | | { |
| | | Model* pRecogObj = (Model*)handle; |
| | | if (!pRecogObj) |
| | |
| | | if (fnCallback) |
| | | fnCallback(nStep, nTotal); |
| | | } |
| | | if(true){ |
| | | if(use_punc){ |
| | | string punc_res = pRecogObj->AddPunc((pResult->msg).c_str()); |
| | | pResult->msg = punc_res; |
| | | } |