feature-functions.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. /**
  2. * Copyright (c) 2022 Xiaomi Corporation (authors: Fangjun Kuang)
  3. *
  4. * See LICENSE for clarification regarding multiple authors
  5. *
  6. * Licensed under the Apache License, Version 2.0 (the "License");
  7. * you may not use this file except in compliance with the License.
  8. * You may obtain a copy of the License at
  9. *
  10. * http://www.apache.org/licenses/LICENSE-2.0
  11. *
  12. * Unless required by applicable law or agreed to in writing, software
  13. * distributed under the License is distributed on an "AS IS" BASIS,
  14. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. * See the License for the specific language governing permissions and
  16. * limitations under the License.
  17. */
  18. // This file is copied/modified from kaldi/src/feat/feature-functions.h
  19. #ifndef KALDI_NATIVE_FBANK_CSRC_FEATURE_FUNCTIONS_H_
  20. #define KALDI_NATIVE_FBANK_CSRC_FEATURE_FUNCTIONS_H_
  21. #include <vector>
  22. namespace knf {
  23. // ComputePowerSpectrum converts a complex FFT (as produced by the FFT
  24. // functions in csrc/rfft.h), and converts it into
  25. // a power spectrum. If the complex FFT is a vector of size n (representing
  26. // half of the complex FFT of a real signal of size n, as described there),
  27. // this function computes in the first (n/2) + 1 elements of it, the
  28. // energies of the fft bins from zero to the Nyquist frequency. Contents of the
  29. // remaining (n/2) - 1 elements are undefined at output.
  30. void ComputePowerSpectrum(std::vector<float> *complex_fft);
  31. } // namespace knf
  32. #endif // KALDI_NATIVE_FBANK_CSRC_FEATURE_FUNCTIONS_H_