utils.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  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. #ifndef KALDI_NATIVE_FBANK_PYTHON_CSRC_UTILS_H_
  19. #define KALDI_NATIVE_FBANK_PYTHON_CSRC_UTILS_H_
  20. #include "feature-fbank.h"
  21. #include "feature-window.h"
  22. #include "mel-computations.h"
  23. #include "kaldi-native-fbank/python/csrc/kaldi-native-fbank.h"
  24. /*
  25. * This file contains code about `from_dict` and
  26. * `as_dict` for various options in kaldi-native-fbank.
  27. *
  28. * Regarding `from_dict`, users don't need to provide
  29. * all the fields in the options. If some fields
  30. * are not provided, it just uses the default one.
  31. *
  32. * If the provided dict in `from_dict` is empty,
  33. * all fields use their default values.
  34. */
  35. namespace knf {
  36. FrameExtractionOptions FrameExtractionOptionsFromDict(py::dict dict);
  37. py::dict AsDict(const FrameExtractionOptions &opts);
  38. MelBanksOptions MelBanksOptionsFromDict(py::dict dict);
  39. py::dict AsDict(const MelBanksOptions &opts);
  40. FbankOptions FbankOptionsFromDict(py::dict dict);
  41. py::dict AsDict(const FbankOptions &opts);
  42. } // namespace knf
  43. #endif // KALDI_NATIVE_FBANK_PYTHON_CSRC_UTILS_H_