From 61f00e84c2cc5f3e9eab8dba5c96ea8aa61e0721 Mon Sep 17 00:00:00 2001
From: hnluo <haoneng.lhn@alibaba-inc.com>
Date: 星期一, 06 十一月 2023 17:13:22 +0800
Subject: [PATCH] Merge pull request #1062 from alibaba-damo-academy/dev_lhn
---
funasr/runtime/onnxruntime/src/funasrruntime.cpp | 19 ++++++++++---------
1 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/funasr/runtime/onnxruntime/src/funasrruntime.cpp b/funasr/runtime/onnxruntime/src/funasrruntime.cpp
index 0d4af5c..91ef188 100644
--- a/funasr/runtime/onnxruntime/src/funasrruntime.cpp
+++ b/funasr/runtime/onnxruntime/src/funasrruntime.cpp
@@ -1,9 +1,6 @@
#include "precomp.h"
#include <vector>
-#ifdef __cplusplus
-extern "C" {
-#endif
// APIs for Init
_FUNASRAPI FUNASR_HANDLE FunASRInit(std::map<std::string, std::string>& model_path, int thread_num, ASR_TYPE type)
@@ -257,11 +254,15 @@
int n_total = audio.GetQueueSize();
float start_time = 0.0;
std::string cur_stamp = "[";
+ std::string lang = (offline_stream->asr_handle)->GetLang();
while (audio.Fetch(buff, len, flag, start_time) > 0) {
string msg = (offline_stream->asr_handle)->Forward(buff, len, true, hw_emb);
std::vector<std::string> msg_vec = funasr::split(msg, '|');
if(msg_vec.size()==0){
continue;
+ }
+ if(lang == "en-bpe" and p_result->msg != ""){
+ p_result->msg += " ";
}
p_result->msg += msg_vec[0];
//timestamp
@@ -282,7 +283,7 @@
p_result->stamp += cur_stamp + "]";
}
if(offline_stream->UsePunc()){
- string punc_res = (offline_stream->punc_handle)->AddPunc((p_result->msg).c_str());
+ string punc_res = (offline_stream->punc_handle)->AddPunc((p_result->msg).c_str(), lang);
p_result->msg = punc_res;
}
#if !defined(__APPLE__)
@@ -337,11 +338,15 @@
int n_total = audio.GetQueueSize();
float start_time = 0.0;
std::string cur_stamp = "[";
+ std::string lang = (offline_stream->asr_handle)->GetLang();
while (audio.Fetch(buff, len, flag, start_time) > 0) {
string msg = (offline_stream->asr_handle)->Forward(buff, len, true, hw_emb);
std::vector<std::string> msg_vec = funasr::split(msg, '|');
if(msg_vec.size()==0){
continue;
+ }
+ if(lang == "en-bpe" and p_result->msg != ""){
+ p_result->msg += " ";
}
p_result->msg += msg_vec[0];
//timestamp
@@ -363,7 +368,7 @@
p_result->stamp += cur_stamp + "]";
}
if(offline_stream->UsePunc()){
- string punc_res = (offline_stream->punc_handle)->AddPunc((p_result->msg).c_str());
+ string punc_res = (offline_stream->punc_handle)->AddPunc((p_result->msg).c_str(), lang);
p_result->msg = punc_res;
}
#if !defined(__APPLE__)
@@ -686,8 +691,4 @@
delete tpass_online_stream;
}
-#ifdef __cplusplus
-
-}
-#endif
--
Gitblit v1.9.1