kaldi-native-fbank 1.22.3


pip install kaldi-native-fbank

  Latest version

Released: Oct 09, 2025

Project Links

Meta
Author: Fangjun Kuang
Requires Python: >=3.8.0

Classifiers

Programming Language
  • C++
  • Python
  • Python :: 3

Topic
  • Scientific/Engineering :: Artificial Intelligence

Introduction

Kaldi-compatible online fbank feature extractor without external dependencies.

Tested on the following architectures and operating systems:

  • Linux
  • macOS
  • Windows
  • Android
  • x86
  • arm
  • aarch64

Usage

See the following CMake-based speech recognition (i.e., text-to-speech) projects for its usage:

They use kaldi-native-fbank to compute fbank features for real-time speech recognition.

Python APIs

First, please install kaldi-native-fbank by

git clone https://github.com/csukuangfj/kaldi-native-fbank
cd kaldi-native-fbank
python3 setup.py install

or use

pip install kaldi-native-fbank

To check that you have installed kaldi-native-fbank successfully, please use

python3 -c "import kaldi_native_fbank; print(kaldi_native_fbank.__version__)"

which should print the version you have installed.

Please refer to

for usages.

For easier reference, we post the above file below:

#!/usr/bin/env python3

import sys

try:
    import kaldifeat
except:
    print("Please install kaldifeat first")
    sys.exit(0)

import kaldi_native_fbank as knf
import torch


def main():
    sampling_rate = 16000
    samples = torch.randn(16000 * 10)

    opts = kaldifeat.FbankOptions()
    opts.frame_opts.dither = 0
    opts.mel_opts.num_bins = 80
    opts.frame_opts.snip_edges = False
    opts.mel_opts.debug_mel = False

    online_fbank = kaldifeat.OnlineFbank(opts)

    online_fbank.accept_waveform(sampling_rate, samples)

    opts = knf.FbankOptions()
    opts.frame_opts.dither = 0
    opts.mel_opts.num_bins = 80
    opts.frame_opts.snip_edges = False
    opts.mel_opts.debug_mel = False

    fbank = knf.OnlineFbank(opts)
    fbank.accept_waveform(sampling_rate, samples.tolist())

    assert online_fbank.num_frames_ready == fbank.num_frames_ready
    for i in range(fbank.num_frames_ready):
        f1 = online_fbank.get_frame(i)
        f2 = torch.from_numpy(fbank.get_frame(i))
        assert torch.allclose(f1, f2, atol=1e-3), (i, (f1 - f2).abs().max())


if __name__ == "__main__":
    torch.manual_seed(20220825)
    main()
    print("success")

Wheel compatibility matrix

Platform CPython 3.8 CPython 3.9 CPython 3.10 CPython 3.11 CPython 3.12 CPython 3.13 CPython 3.14
macosx_10_15_x86_64
macosx_11_0_arm64
manylinux2014_aarch64
manylinux2014_x86_64
manylinux_2_17_aarch64
manylinux_2_17_x86_64
win32
win_amd64

Files in release

kaldi-native-fbank-1.22.3.tar.gz (69.3KiB)
kaldi_native_fbank-1.22.3-cp310-cp310-macosx_10_15_x86_64.whl (238.8KiB)
kaldi_native_fbank-1.22.3-cp310-cp310-macosx_11_0_arm64.whl (222.6KiB)
kaldi_native_fbank-1.22.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (290.0KiB)
kaldi_native_fbank-1.22.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (312.5KiB)
kaldi_native_fbank-1.22.3-cp310-cp310-win32.whl (265.9KiB)
kaldi_native_fbank-1.22.3-cp310-cp310-win_amd64.whl (295.6KiB)
kaldi_native_fbank-1.22.3-cp311-cp311-macosx_10_15_x86_64.whl (240.1KiB)
kaldi_native_fbank-1.22.3-cp311-cp311-macosx_11_0_arm64.whl (223.8KiB)
kaldi_native_fbank-1.22.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (292.0KiB)
kaldi_native_fbank-1.22.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (314.4KiB)
kaldi_native_fbank-1.22.3-cp311-cp311-win32.whl (266.6KiB)
kaldi_native_fbank-1.22.3-cp311-cp311-win_amd64.whl (296.2KiB)
kaldi_native_fbank-1.22.3-cp312-cp312-macosx_10_15_x86_64.whl (243.2KiB)
kaldi_native_fbank-1.22.3-cp312-cp312-macosx_11_0_arm64.whl (223.6KiB)
kaldi_native_fbank-1.22.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (291.9KiB)
kaldi_native_fbank-1.22.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (314.5KiB)
kaldi_native_fbank-1.22.3-cp312-cp312-win32.whl (266.9KiB)
kaldi_native_fbank-1.22.3-cp312-cp312-win_amd64.whl (300.8KiB)
kaldi_native_fbank-1.22.3-cp313-cp313-macosx_10_15_x86_64.whl (243.2KiB)
kaldi_native_fbank-1.22.3-cp313-cp313-macosx_11_0_arm64.whl (223.6KiB)
kaldi_native_fbank-1.22.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (292.3KiB)
kaldi_native_fbank-1.22.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (315.2KiB)
kaldi_native_fbank-1.22.3-cp313-cp313-win32.whl (266.9KiB)
kaldi_native_fbank-1.22.3-cp313-cp313-win_amd64.whl (300.8KiB)
kaldi_native_fbank-1.22.3-cp314-cp314-macosx_10_15_x86_64.whl (243.4KiB)
kaldi_native_fbank-1.22.3-cp314-cp314-macosx_11_0_arm64.whl (223.9KiB)
kaldi_native_fbank-1.22.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (293.0KiB)
kaldi_native_fbank-1.22.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (315.3KiB)
kaldi_native_fbank-1.22.3-cp314-cp314-win32.whl (273.2KiB)
kaldi_native_fbank-1.22.3-cp38-cp38-macosx_10_15_x86_64.whl (238.5KiB)
kaldi_native_fbank-1.22.3-cp38-cp38-macosx_11_0_arm64.whl (222.2KiB)
kaldi_native_fbank-1.22.3-cp38-cp38-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (289.9KiB)
kaldi_native_fbank-1.22.3-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (312.3KiB)
kaldi_native_fbank-1.22.3-cp38-cp38-win32.whl (265.8KiB)
kaldi_native_fbank-1.22.3-cp38-cp38-win_amd64.whl (295.4KiB)
kaldi_native_fbank-1.22.3-cp39-cp39-macosx_10_15_x86_64.whl (238.9KiB)
kaldi_native_fbank-1.22.3-cp39-cp39-macosx_11_0_arm64.whl (222.6KiB)
kaldi_native_fbank-1.22.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (290.4KiB)
kaldi_native_fbank-1.22.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (312.8KiB)
kaldi_native_fbank-1.22.3-cp39-cp39-win32.whl (265.9KiB)
kaldi_native_fbank-1.22.3-cp39-cp39-win_amd64.whl (312.4KiB)
No dependencies