diff --git a/src/online2/online-ivector-feature.cc b/src/online2/online-ivector-feature.cc index e281121a83a..96fe5cd8f8e 100644 --- a/src/online2/online-ivector-feature.cc +++ b/src/online2/online-ivector-feature.cc @@ -580,6 +580,7 @@ void OnlineSilenceWeighting::GetDeltaWeights( // in this function is at the decoder frame-rate. // round up, so we are sure to get weights for at least the frame // 'num_frames_ready - 1', and maybe one or two frames afterward. + KALDI_ASSERT(num_frames_ready > first_decoder_frame); int32 fs = frame_subsampling_factor_, num_decoder_frames_ready = (num_frames_ready - first_decoder_frame + fs - 1) / fs; diff --git a/src/online2/online-ivector-feature.h b/src/online2/online-ivector-feature.h index 3ee60e7c35c..a1df631f463 100644 --- a/src/online2/online-ivector-feature.h +++ b/src/online2/online-ivector-feature.h @@ -500,6 +500,14 @@ class OnlineSilenceWeighting { int32 num_frames_ready, int32 first_decoder_frame, std::vector > *delta_weights); + // A method for backward compatibility, same as above, but for a single + // utterance. + void GetDeltaWeights( + int32 num_frames_ready, + std::vector > *delta_weights) { + GetDeltaWeights(num_frames_ready, 0, delta_weights); + } + private: const TransitionModel &trans_model_; const OnlineSilenceWeightingConfig &config_; diff --git a/src/online2/online-nnet2-decoding-threaded.cc b/src/online2/online-nnet2-decoding-threaded.cc index 9b171aff2e6..c70eb571a46 100644 --- a/src/online2/online-nnet2-decoding-threaded.cc +++ b/src/online2/online-nnet2-decoding-threaded.cc @@ -496,7 +496,7 @@ bool SingleUtteranceNnet2DecoderThreaded::RunNnetEvaluationInternal() { silence_weighting_mutex_.lock(); std::vector > delta_weights; silence_weighting_.GetDeltaWeights( - feature_pipeline_.IvectorFeature()->NumFramesReady(), 0, + feature_pipeline_.IvectorFeature()->NumFramesReady(), &delta_weights); silence_weighting_mutex_.unlock(); feature_pipeline_.IvectorFeature()->UpdateFrameWeights(delta_weights); diff --git a/src/online2bin/online2-wav-nnet2-latgen-faster.cc b/src/online2bin/online2-wav-nnet2-latgen-faster.cc index 275bb58caf1..02b8dcf2ef5 100644 --- a/src/online2bin/online2-wav-nnet2-latgen-faster.cc +++ b/src/online2bin/online2-wav-nnet2-latgen-faster.cc @@ -241,7 +241,7 @@ int main(int argc, char *argv[]) { feature_pipeline.IvectorFeature() != NULL) { silence_weighting.ComputeCurrentTraceback(decoder.Decoder()); silence_weighting.GetDeltaWeights( - feature_pipeline.IvectorFeature()->NumFramesReady(), 0, + feature_pipeline.IvectorFeature()->NumFramesReady(), &delta_weights); feature_pipeline.IvectorFeature()->UpdateFrameWeights( delta_weights); diff --git a/src/online2bin/online2-wav-nnet3-latgen-faster.cc b/src/online2bin/online2-wav-nnet3-latgen-faster.cc index 8de644cbdce..af330a59375 100644 --- a/src/online2bin/online2-wav-nnet3-latgen-faster.cc +++ b/src/online2bin/online2-wav-nnet3-latgen-faster.cc @@ -251,7 +251,7 @@ int main(int argc, char *argv[]) { if (silence_weighting.Active() && feature_pipeline.IvectorFeature() != NULL) { silence_weighting.ComputeCurrentTraceback(decoder.Decoder()); - silence_weighting.GetDeltaWeights(feature_pipeline.NumFramesReady(), 0, + silence_weighting.GetDeltaWeights(feature_pipeline.NumFramesReady(), &delta_weights); feature_pipeline.IvectorFeature()->UpdateFrameWeights(delta_weights); } diff --git a/src/online2bin/online2-wav-nnet3-latgen-grammar.cc b/src/online2bin/online2-wav-nnet3-latgen-grammar.cc index 1ed3fcd17d9..3c4ef858021 100644 --- a/src/online2bin/online2-wav-nnet3-latgen-grammar.cc +++ b/src/online2bin/online2-wav-nnet3-latgen-grammar.cc @@ -256,7 +256,7 @@ int main(int argc, char *argv[]) { if (silence_weighting.Active() && feature_pipeline.IvectorFeature() != NULL) { silence_weighting.ComputeCurrentTraceback(decoder.Decoder()); - silence_weighting.GetDeltaWeights(feature_pipeline.NumFramesReady(), 0, + silence_weighting.GetDeltaWeights(feature_pipeline.NumFramesReady(), &delta_weights); feature_pipeline.IvectorFeature()->UpdateFrameWeights(delta_weights); }