From e899096ce46ab74be7bdce64e24b91e86bb3be78 Mon Sep 17 00:00:00 2001
From: 游雁 <zhifu.gzf@alibaba-inc.com>
Date: 星期三, 11 十月 2023 16:19:52 +0800
Subject: [PATCH] Merge branch 'main' of github.com:alibaba-damo-academy/FunASR add

---
 funasr/runtime/onnxruntime/src/funasrruntime.cpp |   17 ++++++++---------
 1 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/funasr/runtime/onnxruntime/src/funasrruntime.cpp b/funasr/runtime/onnxruntime/src/funasrruntime.cpp
index 73738c7..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,6 @@
 			p_result->stamp += cur_stamp + "]";
 		}
 		if(offline_stream->UsePunc()){
-			string lang = (offline_stream->asr_handle)->GetLang();
 			string punc_res = (offline_stream->punc_handle)->AddPunc((p_result->msg).c_str(), lang);
 			p_result->msg = punc_res;
 		}
@@ -338,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
@@ -364,7 +368,6 @@
 			p_result->stamp += cur_stamp + "]";
 		}
 		if(offline_stream->UsePunc()){
-			string lang = (offline_stream->asr_handle)->GetLang();
 			string punc_res = (offline_stream->punc_handle)->AddPunc((p_result->msg).c_str(), lang);
 			p_result->msg = punc_res;
 		}
@@ -688,8 +691,4 @@
 		delete tpass_online_stream;
 	}
 
-#ifdef __cplusplus 
-
-}
-#endif
 

--
Gitblit v1.9.1