From 3c4227466ebe05ecc0d6b91a18e7b8e4445e1216 Mon Sep 17 00:00:00 2001
From: lyblsgo <lyblsgo@163.com>
Date: 星期三, 26 四月 2023 16:48:23 +0800
Subject: [PATCH] add logs
---
funasr/runtime/onnxruntime/src/audio.cpp | 23 ++---
funasr/runtime/onnxruntime/src/ct-transformer.cpp | 6 -
funasr/runtime/onnxruntime/include/com-define.h | 21 +++-
funasr/runtime/onnxruntime/src/funasr-onnx-offline-rtf.cpp | 24 +++--
funasr/runtime/onnxruntime/src/funasr-onnx-offline.cpp | 22 +++--
funasr/runtime/onnxruntime/src/tokenizer.cpp | 15 ++-
funasr/runtime/onnxruntime/src/paraformer.cpp | 6 +
funasr/runtime/onnxruntime/src/fsmn-vad.cpp | 80 ++++++++++++-------
funasr/runtime/onnxruntime/src/vocab.cpp | 7 +
funasr/runtime/onnxruntime/src/fsmn-vad.h | 19 ++--
10 files changed, 131 insertions(+), 92 deletions(-)
diff --git a/funasr/runtime/onnxruntime/include/com-define.h b/funasr/runtime/onnxruntime/include/com-define.h
index 0369278..8c88517 100644
--- a/funasr/runtime/onnxruntime/include/com-define.h
+++ b/funasr/runtime/onnxruntime/include/com-define.h
@@ -15,6 +15,7 @@
// model path
#define VAD_MODEL_PATH "vad-model"
#define VAD_CMVN_PATH "vad-cmvn"
+#define VAD_CONFIG_PATH "vad-config"
#define AM_MODEL_PATH "am-model"
#define AM_CMVN_PATH "am-cmvn"
#define AM_CONFIG_PATH "am-config"
@@ -25,29 +26,37 @@
#define THREAD_NUM "thread-num"
// vad
-#ifndef VAD_SILENCE_DYRATION
-#define VAD_SILENCE_DYRATION 15000
+#ifndef VAD_SILENCE_DURATION
+#define VAD_SILENCE_DURATION 800
#endif
#ifndef VAD_MAX_LEN
-#define VAD_MAX_LEN 800
+#define VAD_MAX_LEN 15000
#endif
#ifndef VAD_SPEECH_NOISE_THRES
#define VAD_SPEECH_NOISE_THRES 0.9
#endif
+#ifndef VAD_LFR_M
+#define VAD_LFR_M 5
+#endif
+
+#ifndef VAD_LFR_N
+#define VAD_LFR_N 1
+#endif
+
// punc
#define UNK_CHAR "<unk>"
-#define TOKEN_LEN 20
+#define TOKEN_LEN 20
-#define CANDIDATE_NUM 6
+#define CANDIDATE_NUM 6
#define UNKNOW_INDEX 0
#define NOTPUNC_INDEX 1
#define COMMA_INDEX 2
#define PERIOD_INDEX 3
#define QUESTION_INDEX 4
#define DUN_INDEX 5
-#define CACHE_POP_TRIGGER_LIMIT 200
+#define CACHE_POP_TRIGGER_LIMIT 200
#endif
diff --git a/funasr/runtime/onnxruntime/src/audio.cpp b/funasr/runtime/onnxruntime/src/audio.cpp
index ef48fa1..d104500 100644
--- a/funasr/runtime/onnxruntime/src/audio.cpp
+++ b/funasr/runtime/onnxruntime/src/audio.cpp
@@ -153,8 +153,7 @@
int AudioFrame::Disp()
{
- printf("not imp!!!!\n");
-
+ LOG(ERROR) << "Not imp!!!!";
return 0;
};
@@ -187,8 +186,7 @@
void Audio::Disp()
{
- printf("Audio time is %f s. len is %d\n", (float)speech_len / MODEL_SAMPLE_RATE,
- speech_len);
+ LOG(INFO) << "Audio time is " << (float)speech_len / MODEL_SAMPLE_RATE << " s. len is " << speech_len;
}
float Audio::GetTimeLen()
@@ -199,19 +197,15 @@
void Audio::WavResample(int32_t sampling_rate, const float *waveform,
int32_t n)
{
- printf(
- "Creating a resampler:\n"
- " in_sample_rate: %d\n"
- " output_sample_rate: %d\n",
- sampling_rate, static_cast<int32_t>(MODEL_SAMPLE_RATE));
+ LOG(INFO) << "Creating a resampler:\n"
+ << " in_sample_rate: "<< sampling_rate << "\n"
+ << " output_sample_rate: " << static_cast<int32_t>(MODEL_SAMPLE_RATE);
float min_freq =
std::min<int32_t>(sampling_rate, MODEL_SAMPLE_RATE);
float lowpass_cutoff = 0.99 * 0.5 * min_freq;
int32_t lowpass_filter_width = 6;
- //FIXME
- //auto resampler = new LinearResample(
- // sampling_rate, model_sample_rate, lowpass_cutoff, lowpass_filter_width);
+
auto resampler = std::make_unique<LinearResample>(
sampling_rate, MODEL_SAMPLE_RATE, lowpass_cutoff, lowpass_filter_width);
std::vector<float> samples;
@@ -240,7 +234,7 @@
std::ifstream is(filename, std::ifstream::binary);
is.read(reinterpret_cast<char *>(&header), sizeof(header));
if(!is){
- fprintf(stderr, "Failed to read %s\n", filename);
+ LOG(ERROR) << "Failed to read " << filename;
return false;
}
@@ -255,7 +249,7 @@
memset(speech_buff, 0, sizeof(int16_t) * speech_len);
is.read(reinterpret_cast<char *>(speech_buff), header.subchunk2_size);
if (!is) {
- fprintf(stderr, "Failed to read %s\n", filename);
+ LOG(ERROR) << "Failed to read " << filename;
return false;
}
speech_data = (float*)malloc(sizeof(float) * speech_len);
@@ -386,6 +380,7 @@
FILE* fp;
fp = fopen(filename, "rb");
if (fp == nullptr)
+ LOG(ERROR) << "Failed to read " << filename;
return false;
fseek(fp, 0, SEEK_END);
uint32_t n_file_len = ftell(fp);
diff --git a/funasr/runtime/onnxruntime/src/ct-transformer.cpp b/funasr/runtime/onnxruntime/src/ct-transformer.cpp
index 39ab2bc..ecde636 100644
--- a/funasr/runtime/onnxruntime/src/ct-transformer.cpp
+++ b/funasr/runtime/onnxruntime/src/ct-transformer.cpp
@@ -40,7 +40,6 @@
m_tokenizer.OpenYaml(punc_config.c_str());
}
-
CTTransformer::~CTTransformer()
{
}
@@ -180,10 +179,9 @@
}
catch (std::exception const &e)
{
- printf(e.what());
+ LOG(ERROR) << "Error when run punc onnx forword: " << (e.what());
+ exit(0);
}
return punction;
}
-
-
diff --git a/funasr/runtime/onnxruntime/src/fsmn-vad.cpp b/funasr/runtime/onnxruntime/src/fsmn-vad.cpp
index 7360a9a..fbb682b 100644
--- a/funasr/runtime/onnxruntime/src/fsmn-vad.cpp
+++ b/funasr/runtime/onnxruntime/src/fsmn-vad.cpp
@@ -6,40 +6,58 @@
#include <fstream>
#include "precomp.h"
-void FsmnVad::InitVad(const std::string &vad_model, const std::string &vad_cmvn, int vad_sample_rate, int vad_silence_duration, int vad_max_len,
- float vad_speech_noise_thres) {
+void FsmnVad::InitVad(const std::string &vad_model, const std::string &vad_cmvn, const std::string &vad_config) {
session_options_.SetIntraOpNumThreads(1);
session_options_.SetGraphOptimizationLevel(ORT_ENABLE_ALL);
session_options_.DisableCpuMemArena();
- this->vad_sample_rate_ = vad_sample_rate;
- this->vad_silence_duration_=vad_silence_duration;
- this->vad_max_len_=vad_max_len;
- this->vad_speech_noise_thres_=vad_speech_noise_thres;
- ReadModel(vad_model);
+ ReadModel(vad_model.c_str());
LoadCmvn(vad_cmvn.c_str());
+ LoadConfigFromYaml(vad_config.c_str());
InitCache();
-
- fbank_opts.frame_opts.dither = 0;
- fbank_opts.mel_opts.num_bins = 80;
- fbank_opts.frame_opts.samp_freq = vad_sample_rate;
- fbank_opts.frame_opts.window_type = "hamming";
- fbank_opts.frame_opts.frame_shift_ms = 10;
- fbank_opts.frame_opts.frame_length_ms = 25;
- fbank_opts.energy_floor = 0;
- fbank_opts.mel_opts.debug_mel = false;
-
}
-void FsmnVad::ReadModel(const std::string &vad_model) {
+void FsmnVad::LoadConfigFromYaml(const char* filename){
+
+ YAML::Node config;
+ try{
+ config = YAML::LoadFile(filename);
+ }catch(exception const &e){
+ LOG(ERROR) << "Error loading file, yaml file error or not exist.";
+ exit(-1);
+ }
+
+ try{
+ YAML::Node frontend_conf = config["frontend_conf"];
+ YAML::Node post_conf = config["vad_post_conf"];
+
+ this->vad_sample_rate_ = frontend_conf["fs"].as<int>();
+ this->vad_silence_duration_ = post_conf["max_end_silence_time"].as<int>();
+ this->vad_max_len_ = post_conf["max_single_segment_time"].as<int>();
+ this->vad_speech_noise_thres_ = post_conf["speech_noise_thres"].as<double>();
+
+ fbank_opts.frame_opts.dither = frontend_conf["dither"].as<float>();
+ fbank_opts.mel_opts.num_bins = frontend_conf["n_mels"].as<int>();
+ fbank_opts.frame_opts.samp_freq = (float)vad_sample_rate_;
+ fbank_opts.frame_opts.window_type = frontend_conf["window"].as<string>();
+ fbank_opts.frame_opts.frame_shift_ms = frontend_conf["frame_shift"].as<float>();
+ fbank_opts.frame_opts.frame_length_ms = frontend_conf["frame_length"].as<float>();
+ fbank_opts.energy_floor = 0;
+ fbank_opts.mel_opts.debug_mel = false;
+ }catch(exception const &e){
+ LOG(ERROR) << "Error when load argument from vad config YAML.";
+ exit(-1);
+ }
+}
+
+void FsmnVad::ReadModel(const char* vad_model) {
try {
vad_session_ = std::make_shared<Ort::Session>(
- env_, vad_model.c_str(), session_options_);
+ env_, vad_model, session_options_);
} catch (std::exception const &e) {
LOG(ERROR) << "Error when load vad onnx model: " << e.what();
exit(0);
}
- LOG(INFO) << "vad onnx:";
GetInputOutputInfo(vad_session_, &vad_in_names_, &vad_out_names_);
}
@@ -61,8 +79,8 @@
shape << j;
shape << " ";
}
- LOG(INFO) << "\tInput " << i << " : name=" << name.get() << " type=" << type
- << " dims=" << shape.str();
+ // LOG(INFO) << "\tInput " << i << " : name=" << name.get() << " type=" << type
+ // << " dims=" << shape.str();
(*in_names)[i] = name.get();
name.release();
}
@@ -80,8 +98,8 @@
shape << j;
shape << " ";
}
- LOG(INFO) << "\tOutput " << i << " : name=" << name.get() << " type=" << type
- << " dims=" << shape.str();
+ // LOG(INFO) << "\tOutput " << i << " : name=" << name.get() << " type=" << type
+ // << " dims=" << shape.str();
(*out_names)[i] = name.get();
name.release();
}
@@ -121,13 +139,12 @@
// 4. Onnx infer
std::vector<Ort::Value> vad_ort_outputs;
try {
- VLOG(3) << "Start infer";
vad_ort_outputs = vad_session_->Run(
Ort::RunOptions{nullptr}, vad_in_names_.data(), vad_inputs.data(),
vad_inputs.size(), vad_out_names_.data(), vad_out_names_.size());
} catch (std::exception const &e) {
- LOG(ERROR) << e.what();
- return;
+ LOG(ERROR) << "Error when run vad onnx forword: " << (e.what());
+ exit(0);
}
// 5. Change infer result to output shapes
@@ -168,6 +185,10 @@
try{
using namespace std;
ifstream cmvn_stream(filename);
+ if (!cmvn_stream.is_open()) {
+ LOG(ERROR) << "Failed to open file: " << filename;
+ exit(0);
+ }
string line;
while (getline(cmvn_stream, line)) {
@@ -203,7 +224,7 @@
}
}
-std::vector<std::vector<float>> &FsmnVad::LfrCmvn(std::vector<std::vector<float>> &vad_feats, int lfr_m, int lfr_n) {
+std::vector<std::vector<float>> &FsmnVad::LfrCmvn(std::vector<std::vector<float>> &vad_feats) {
std::vector<std::vector<float>> out_feats;
int T = vad_feats.size();
@@ -250,7 +271,7 @@
std::vector<std::vector<float>> vad_feats;
std::vector<std::vector<float>> vad_probs;
FbankKaldi(vad_sample_rate_, vad_feats, waves);
- vad_feats = LfrCmvn(vad_feats, 5, 1);
+ vad_feats = LfrCmvn(vad_feats);
Forward(vad_feats, &vad_probs);
E2EVadModel vad_scorer = E2EVadModel();
@@ -258,7 +279,6 @@
vad_segments = vad_scorer(vad_probs, waves, true, false, vad_silence_duration_, vad_max_len_,
vad_speech_noise_thres_, vad_sample_rate_);
return vad_segments;
-
}
void FsmnVad::InitCache(){
diff --git a/funasr/runtime/onnxruntime/src/fsmn-vad.h b/funasr/runtime/onnxruntime/src/fsmn-vad.h
index a27ea0f..1d5f68c 100644
--- a/funasr/runtime/onnxruntime/src/fsmn-vad.h
+++ b/funasr/runtime/onnxruntime/src/fsmn-vad.h
@@ -18,15 +18,15 @@
public:
FsmnVad();
void Test();
- void InitVad(const std::string &vad_model, const std::string &vad_cmvn, int vad_sample_rate, int vad_silence_duration, int vad_max_len,
- float vad_speech_noise_thres);
+ void InitVad(const std::string &vad_model, const std::string &vad_cmvn, const std::string &vad_config);
std::vector<std::vector<int>> Infer(const std::vector<float> &waves);
void Reset();
private:
- void ReadModel(const std::string &vad_model);
+ void ReadModel(const char* vad_model);
+ void LoadConfigFromYaml(const char* filename);
static void GetInputOutputInfo(
const std::shared_ptr<Ort::Session> &session,
@@ -35,7 +35,7 @@
void FbankKaldi(float sample_rate, std::vector<std::vector<float>> &vad_feats,
const std::vector<float> &waves);
- std::vector<std::vector<float>> &LfrCmvn(std::vector<std::vector<float>> &vad_feats, int lfr_m, int lfr_n);
+ std::vector<std::vector<float>> &LfrCmvn(std::vector<std::vector<float>> &vad_feats);
void Forward(
const std::vector<std::vector<float>> &chunk_feats,
@@ -54,10 +54,13 @@
knf::FbankOptions fbank_opts;
std::vector<float> means_list;
std::vector<float> vars_list;
- int vad_sample_rate_ = 16000;
- int vad_silence_duration_ = 800;
- int vad_max_len_ = 15000;
- double vad_speech_noise_thres_ = 0.9;
+
+ int vad_sample_rate_ = MODEL_SAMPLE_RATE;
+ int vad_silence_duration_ = VAD_SILENCE_DURATION;
+ int vad_max_len_ = VAD_MAX_LEN;
+ double vad_speech_noise_thres_ = VAD_SPEECH_NOISE_THRES;
+ int lfr_m = VAD_LFR_M;
+ int lfr_n = VAD_LFR_N;
};
diff --git a/funasr/runtime/onnxruntime/src/funasr-onnx-offline-rtf.cpp b/funasr/runtime/onnxruntime/src/funasr-onnx-offline-rtf.cpp
index 2678465..45b6196 100644
--- a/funasr/runtime/onnxruntime/src/funasr-onnx-offline-rtf.cpp
+++ b/funasr/runtime/onnxruntime/src/funasr-onnx-offline-rtf.cpp
@@ -59,13 +59,13 @@
if(result){
string msg = FunASRGetResult(result, 0);
- printf("Thread: %d Result: %s \n", this_thread::get_id(), msg.c_str());
+ LOG(INFO) << "Thread: " << this_thread::get_id() <<" Result: " << msg.c_str();
float snippet_time = FunASRGetRetSnippetTime(result);
n_total_length += snippet_time;
FunASRFreeResult(result);
}else{
- cout <<"No return data!";
+ LOG(ERROR) << ("No return data!\n");
}
}
{
@@ -87,11 +87,13 @@
int main(int argc, char *argv[])
{
- //google::InitGoogleLogging(argv[0]);
+ google::InitGoogleLogging(argv[0]);
+ FLAGS_logtostderr = true;
- TCLAP::CmdLine cmd("funasr-onnx-offline", ' ', "1.0");
+ TCLAP::CmdLine cmd("funasr-onnx-offline-rtf", ' ', "1.0");
TCLAP::ValueArg<std::string> vad_model("", VAD_MODEL_PATH, "vad model path", false, "", "string");
TCLAP::ValueArg<std::string> vad_cmvn("", VAD_CMVN_PATH, "vad cmvn path", false, "", "string");
+ TCLAP::ValueArg<std::string> vad_config("", VAD_CONFIG_PATH, "vad config path", false, "", "string");
TCLAP::ValueArg<std::string> am_model("", AM_MODEL_PATH, "am model path", false, "", "string");
TCLAP::ValueArg<std::string> am_cmvn("", AM_CMVN_PATH, "am cmvn path", false, "", "string");
@@ -105,6 +107,7 @@
cmd.add(vad_model);
cmd.add(vad_cmvn);
+ cmd.add(vad_config);
cmd.add(am_model);
cmd.add(am_cmvn);
cmd.add(am_config);
@@ -117,6 +120,7 @@
std::map<std::string, std::string> model_path;
GetValue(vad_model, VAD_MODEL_PATH, model_path);
GetValue(vad_cmvn, VAD_CMVN_PATH, model_path);
+ GetValue(vad_config, VAD_CONFIG_PATH, model_path);
GetValue(am_model, AM_MODEL_PATH, model_path);
GetValue(am_cmvn, AM_CMVN_PATH, model_path);
GetValue(am_config, AM_CONFIG_PATH, model_path);
@@ -130,14 +134,14 @@
if (!asr_handle)
{
- LOG(ERROR) << ("Cannot load ASR Model from: %s, there must be files model.onnx and vocab.txt", argv[1]);
+ LOG(ERROR) << "FunASR init failed";
exit(-1);
}
gettimeofday(&end, NULL);
long seconds = (end.tv_sec - start.tv_sec);
long modle_init_micros = ((seconds * 1000000) + end.tv_usec) - (start.tv_usec);
- printf("Model initialization takes %lfs.", (double)modle_init_micros / 1000000);
+ LOG(INFO) << "Model initialization takes " << (double)modle_init_micros / 1000000 << " s";
// read wav_scp
vector<string> wav_list;
@@ -174,10 +178,10 @@
thread.join();
}
- printf("total_time_wav %ld ms.\n", (long)(total_length * 1000));
- printf("total_time_comput %ld ms.\n", total_time / 1000);
- printf("total_rtf %05lf .\n", (double)total_time/ (total_length*1000000));
- printf("speedup %05lf .\n", 1.0/((double)total_time/ (total_length*1000000)));
+ LOG(INFO) << "total_time_wav " << (long)(total_length * 1000) << " ms";
+ LOG(INFO) << "total_time_comput " << total_time / 1000 << " ms";
+ LOG(INFO) << "total_rtf " << (double)total_time/ (total_length*1000000);
+ LOG(INFO) << "speedup " << 1.0/((double)total_time/ (total_length*1000000));
FunASRUninit(asr_handle);
return 0;
diff --git a/funasr/runtime/onnxruntime/src/funasr-onnx-offline.cpp b/funasr/runtime/onnxruntime/src/funasr-onnx-offline.cpp
index bc6224c..0f5b378 100644
--- a/funasr/runtime/onnxruntime/src/funasr-onnx-offline.cpp
+++ b/funasr/runtime/onnxruntime/src/funasr-onnx-offline.cpp
@@ -30,11 +30,13 @@
int main(int argc, char *argv[])
{
- //google::InitGoogleLogging(argv[0]);
+ google::InitGoogleLogging(argv[0]);
+ FLAGS_logtostderr = true;
TCLAP::CmdLine cmd("funasr-onnx-offline", ' ', "1.0");
TCLAP::ValueArg<std::string> vad_model("", VAD_MODEL_PATH, "vad model path", false, "", "string");
TCLAP::ValueArg<std::string> vad_cmvn("", VAD_CMVN_PATH, "vad cmvn path", false, "", "string");
+ TCLAP::ValueArg<std::string> vad_config("", VAD_CONFIG_PATH, "vad config path", false, "", "string");
TCLAP::ValueArg<std::string> am_model("", AM_MODEL_PATH, "am model path", false, "", "string");
TCLAP::ValueArg<std::string> am_cmvn("", AM_CMVN_PATH, "am cmvn path", false, "", "string");
@@ -48,6 +50,7 @@
cmd.add(vad_model);
cmd.add(vad_cmvn);
+ cmd.add(vad_config);
cmd.add(am_model);
cmd.add(am_cmvn);
cmd.add(am_config);
@@ -60,6 +63,7 @@
std::map<std::string, std::string> model_path;
GetValue(vad_model, VAD_MODEL_PATH, model_path);
GetValue(vad_cmvn, VAD_CMVN_PATH, model_path);
+ GetValue(vad_config, VAD_CONFIG_PATH, model_path);
GetValue(am_model, AM_MODEL_PATH, model_path);
GetValue(am_cmvn, AM_CMVN_PATH, model_path);
GetValue(am_config, AM_CONFIG_PATH, model_path);
@@ -76,14 +80,14 @@
if (!asr_hanlde)
{
- LOG(ERROR) << ("Cannot load ASR Model from: %s, there must be files model.onnx and vocab.txt", argv[1]);
+ LOG(ERROR) << "FunASR init failed";
exit(-1);
}
gettimeofday(&end, NULL);
long seconds = (end.tv_sec - start.tv_sec);
long modle_init_micros = ((seconds * 1000000) + end.tv_usec) - (start.tv_usec);
- printf("Model initialization takes %lfs.", (double)modle_init_micros / 1000000);
+ LOG(INFO) << "Model initialization takes " << (double)modle_init_micros / 1000000 << " s";
// read wav_path and wav_scp
vector<string> wav_list;
@@ -94,7 +98,7 @@
if(model_path.find(WAV_SCP)!=model_path.end()){
ifstream in(model_path.at(WAV_SCP));
if (!in.is_open()) {
- LOG(ERROR) << ("Failed to open file: %s", model_path.at(WAV_SCP));
+ LOG(ERROR) << "Failed to open file: " << model_path.at(WAV_SCP) ;
return 0;
}
string line;
@@ -127,16 +131,14 @@
}
else
{
- LOG(ERROR) << ("no return data!\n");
+ LOG(ERROR) << ("No return data!\n");
}
}
- printf("Audio length %lfs.\n", (double)snippet_time);
- printf("Model inference takes %lfs.\n", (double)taking_micros / 1000000);
- printf("Model inference RTF: %04lf.\n", (double)taking_micros/ (snippet_time*1000000));
-
+ LOG(INFO) << "Audio length: " << (double)snippet_time << " s";
+ LOG(INFO) << "Model inference takes: " << (double)taking_micros / 1000000 <<" s";
+ LOG(INFO) << "Model inference RTF: " << (double)taking_micros/ (snippet_time*1000000);
FunASRUninit(asr_hanlde);
return 0;
}
-
diff --git a/funasr/runtime/onnxruntime/src/paraformer.cpp b/funasr/runtime/onnxruntime/src/paraformer.cpp
index c2991eb..136d228 100644
--- a/funasr/runtime/onnxruntime/src/paraformer.cpp
+++ b/funasr/runtime/onnxruntime/src/paraformer.cpp
@@ -16,16 +16,18 @@
use_vad = true;
string vad_model_path;
string vad_cmvn_path;
+ string vad_config_path;
try{
vad_model_path = model_path.at(VAD_MODEL_PATH);
vad_cmvn_path = model_path.at(VAD_CMVN_PATH);
+ vad_config_path = model_path.at(VAD_CONFIG_PATH);
}catch(const out_of_range& e){
- LOG(ERROR) << "Error when read "<< VAD_CMVN_PATH <<" :" << e.what();
+ LOG(ERROR) << "Error when read "<< VAD_CMVN_PATH << " or " << VAD_CONFIG_PATH <<" :" << e.what();
exit(0);
}
vad_handle = make_unique<FsmnVad>();
- vad_handle->InitVad(vad_model_path, vad_cmvn_path, MODEL_SAMPLE_RATE, VAD_MAX_LEN, VAD_SILENCE_DYRATION, VAD_SPEECH_NOISE_THRES);
+ vad_handle->InitVad(vad_model_path, vad_cmvn_path, vad_config_path);
}
// AM model
diff --git a/funasr/runtime/onnxruntime/src/tokenizer.cpp b/funasr/runtime/onnxruntime/src/tokenizer.cpp
index c38664a..5f29b46 100644
--- a/funasr/runtime/onnxruntime/src/tokenizer.cpp
+++ b/funasr/runtime/onnxruntime/src/tokenizer.cpp
@@ -29,15 +29,20 @@
}
}
if (node.IsScalar()) {//锟角憋拷锟斤拷锟斤拷
- cout << node.as<string>() << endl;
+ LOG(INFO) << node.as<string>();
}
}
bool CTokenizer::OpenYaml(const char* sz_yamlfile)
{
- YAML::Node m_Config = YAML::LoadFile(sz_yamlfile);
- if (m_Config.IsNull())
- return false;
+ YAML::Node m_Config;
+ try{
+ m_Config = YAML::LoadFile(sz_yamlfile);
+ }catch(exception const &e){
+ LOG(INFO) << "Error loading file, yaml file error or not exist.";
+ exit(-1);
+ }
+
try
{
auto Tokens = m_Config["token_list"];
@@ -66,7 +71,7 @@
}
}
catch (YAML::BadFile& e) {
- std::cout << "read error!" << std::endl;
+ LOG(ERROR) << "Read error!";
return false;
}
m_ready = true;
diff --git a/funasr/runtime/onnxruntime/src/vocab.cpp b/funasr/runtime/onnxruntime/src/vocab.cpp
index ba041b8..53233b3 100644
--- a/funasr/runtime/onnxruntime/src/vocab.cpp
+++ b/funasr/runtime/onnxruntime/src/vocab.cpp
@@ -1,5 +1,6 @@
#include "vocab.h"
-#include "yaml-cpp/yaml.h"
+#include <yaml-cpp/yaml.h>
+#include <glog/logging.h>
#include <fstream>
#include <iostream>
@@ -22,8 +23,8 @@
YAML::Node config;
try{
config = YAML::LoadFile(filename);
- }catch(...){
- printf("error loading file, yaml file error or not exist.\n");
+ }catch(exception const &e){
+ LOG(INFO) << "Error loading file, yaml file error or not exist.";
exit(-1);
}
YAML::Node myList = config["token_list"];
--
Gitblit v1.9.1