游雁
2023-02-16 d63b89d71843b9726ac3554bafb5274dc2ae7331
funasr/runtime/python/onnxruntime/paraformer/rapid_paraformer/utils/frontend.py
@@ -21,7 +21,7 @@
            fs: int = 16000,
            window: str = 'hamming',
            n_mels: int = 80,
            frame_length: int = 25.0,
            frame_length: int = 25,
            frame_shift: int = 10,
            filter_length_min: int = -1,
            filter_length_max: float = -1,
@@ -43,8 +43,6 @@
        opts.mel_opts.debug_mel = False
        self.opts = opts
        self.compute_fbank_feats = knf.OnlineFbank(self.opts)
        self.filter_length_min = filter_length_min
        self.filter_length_max = filter_length_max
        self.lfr_m = lfr_m
@@ -57,11 +55,12 @@
    def fbank(self,
              waveform: np.ndarray) -> Tuple[np.ndarray, np.ndarray]:
        waveform = waveform * (1 << 15)
        self.compute_fbank_feats.accept_waveform(self.opts.frame_opts.samp_freq, waveform.tolist())
        frames = self.compute_fbank_feats.num_frames_ready
        fbank_fn = knf.OnlineFbank(self.opts)
        fbank_fn.accept_waveform(self.opts.frame_opts.samp_freq, waveform.tolist())
        frames = fbank_fn.num_frames_ready
        mat = np.empty([frames, self.opts.mel_opts.num_bins])
        for i in range(frames):
            mat[i, :] = self.compute_fbank_feats.get_frame(i)
            mat[i, :] = fbank_fn.get_frame(i)
        feat = mat.astype(np.float32)
        feat_len = np.array(mat.shape[0]).astype(np.int32)
        return feat, feat_len