游雁
2023-05-25 b18f7d121f2f17df8bf2d0c2bbb223bc5ddbcc0f
funasr/runtime/onnxruntime/src/fsmn-vad.h
@@ -8,7 +8,8 @@
#include "precomp.h"
class FsmnVad {
namespace funasr {
class FsmnVad : public VadModel {
/**
 * Author: Speech Lab of DAMO Academy, Alibaba Group
 * Deep-FSMN for Large Vocabulary Continuous Speech Recognition
@@ -17,10 +18,10 @@
public:
    FsmnVad();
    ~FsmnVad();
    void Test();
    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 InitVad(const std::string &vad_model, const std::string &vad_cmvn, const std::string &vad_config, int thread_num);
    std::vector<std::vector<int>> Infer(std::vector<float> &waves, bool input_finished=true);
    void Reset();
private:
@@ -33,9 +34,9 @@
            std::vector<const char *> *in_names, std::vector<const char *> *out_names);
    void FbankKaldi(float sample_rate, std::vector<std::vector<float>> &vad_feats,
                    const std::vector<float> &waves);
                    std::vector<float> &waves);
    std::vector<std::vector<float>> &LfrCmvn(std::vector<std::vector<float>> &vad_feats);
    void LfrCmvn(std::vector<std::vector<float>> &vad_feats);
    void Forward(
            const std::vector<std::vector<float>> &chunk_feats,
@@ -63,5 +64,5 @@
    int lfr_n = VAD_LFR_N;
};
} // namespace funasr
#endif //VAD_SERVER_FSMNVAD_H