zhifu gao
2023-12-06 81acb17544a05424dff0ef74f3aeb2ce9866ba6a
runtime/websocket/bin/funasr-wss-server-2pass.cpp
@@ -28,8 +28,11 @@
  try {
    google::InitGoogleLogging(argv[0]);
    FLAGS_logtostderr = true;
    TCLAP::CmdLine cmd("funasr-wss-server", ' ', "1.0");
    std::string tpass_version = "";
#ifdef _WIN32
    tpass_version = "0.1.0";
#endif
    TCLAP::CmdLine cmd("funasr-wss-server", ' ', tpass_version);
    TCLAP::ValueArg<std::string> download_model_dir(
        "", "download-model-dir",
        "Download model from Modelscope to download_model_dir", false,
@@ -96,11 +99,11 @@
                                           "0.0.0.0", "string");
    TCLAP::ValueArg<int> port("", "port", "port", false, 10095, "int");
    TCLAP::ValueArg<int> io_thread_num("", "io-thread-num", "io thread num",
                                       false, 8, "int");
                                       false, 2, "int");
    TCLAP::ValueArg<int> decoder_thread_num(
        "", "decoder-thread-num", "decoder thread num", false, 8, "int");
    TCLAP::ValueArg<int> model_thread_num("", "model-thread-num",
                                          "model thread num", false, 4, "int");
                                          "model thread num", false, 2, "int");
    TCLAP::ValueArg<std::string> certfile(
        "", "certfile",
@@ -231,6 +234,16 @@
        std::string down_asr_path;
        std::string down_asr_model;
        size_t found = s_offline_asr_path.find("speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404");
        if (found != std::string::npos) {
            model_path["offline-model-revision"]="v1.2.4";
        } else{
            found = s_offline_asr_path.find("speech_paraformer-large-contextual_asr_nat-zh-cn-16k-common-vocab8404");
            if (found != std::string::npos) {
                model_path["offline-model-revision"]="v1.0.5";
            }
        }
        if (access(s_offline_asr_path.c_str(), F_OK) == 0) {
          // local
          python_cmd_asr = python_cmd + " --model-name " + s_offline_asr_path +
@@ -239,16 +252,6 @@
          down_asr_path = s_offline_asr_path;
        } 
        else {
          size_t found = s_offline_asr_path.find("speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404");
          if (found != std::string::npos) {
              model_path["offline-model-revision"]="v1.2.4";
          } else{
              found = s_offline_asr_path.find("speech_paraformer-large-contextual_asr_nat-zh-cn-16k-common-vocab8404");
              if (found != std::string::npos) {
                  model_path["offline-model-revision"]="v1.0.5";
              }
          }
          // modelscope
          LOG(INFO) << "Download model: " << s_offline_asr_path
                    << " from modelscope : ";