游雁
2024-02-19 94de39dde2e616a01683c518023d0fab72b4e103
runtime/onnxruntime/src/funasrruntime.cpp
@@ -146,6 +146,7 @@
      funasr::FUNASR_VAD_RESULT* p_result = new funasr::FUNASR_VAD_RESULT;
      p_result->snippet_time = audio.GetTimeLen();
      if(p_result->snippet_time == 0){
         p_result->segments = new vector<std::vector<int>>();
            return p_result;
        }
      
@@ -178,6 +179,7 @@
      funasr::FUNASR_VAD_RESULT* p_result = new funasr::FUNASR_VAD_RESULT;
      p_result->snippet_time = audio.GetTimeLen();
      if(p_result->snippet_time == 0){
         p_result->segments = new vector<std::vector<int>>();
            return p_result;
        }
      
@@ -243,7 +245,7 @@
            return p_result;
        }
      if(offline_stream->UseVad()){
         audio.Split(offline_stream);
         audio.CutSplit(offline_stream);
      }
      float* buff;
@@ -478,7 +480,7 @@
      
      audio->Split(vad_online_handle, chunk_len, input_finished, mode);
      funasr::AudioFrame* frame = NULL;
      funasr::AudioFrame* frame = nullptr;
      while(audio->FetchChunck(frame) > 0){
         string msg = ((funasr::ParaformerOnline*)asr_online_handle)->Forward(frame->data, frame->len, frame->is_final);
         if(mode == ASR_ONLINE){
@@ -502,9 +504,9 @@
         }else if(mode == ASR_TWO_PASS){
            p_result->msg += msg;
         }
         if(frame != NULL){
         if(frame != nullptr){
            delete frame;
            frame = NULL;
            frame = nullptr;
         }
      }
@@ -559,9 +561,9 @@
         if (!(p_result->stamp).empty()){
            p_result->stamp_sents = funasr::TimestampSentence(p_result->tpass_msg, p_result->stamp);
         }
         if(frame != NULL){
         if(frame != nullptr){
            delete frame;
            frame = NULL;
            frame = nullptr;
         }
      }