kaldi-native-fbank
What it is and what it does
kaldi-native-fbank is a Python wrapper around a C++ implementation of Kaldi-compatible filterbank feature extraction. It computes mel-frequency filterbank coefficients from raw audio waveforms, designed for real-time speech recognition pipelines. The package accepts audio samples at a specified sampling rate and produces frame-by-frame feature vectors without requiring external audio libraries or Kaldi itself.
The package is built as a compiled extension with pre-built wheels for Python 3.8+ across Linux, macOS, and Windows on x86, ARM, and aarch64 architectures. It has no runtime Python dependencies and is intended for integration into speech recognition systems like sherpa-ncnn and sherpa-onnx, where it handles the feature extraction stage of online (streaming) speech processing.
Use it for:
- Extract mel-filterbank features from streaming audio in real-time speech recognition systems.
- Replace Kaldi's fbank computation in modern speech pipelines without installing Kaldi itself.
- Compute frame-level audio features for acoustic model inference in embedded or resource-constrained environments.
- Validate or benchmark fbank feature extraction against Kaldi's reference implementation.
- Integrate audio preprocessing into Python-based speech recognition frameworks.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Extracts Kaldi-compatible filterbank (fbank) audio features from waveforms in real-time without external dependencies, supporting online processing across multiple architectures and operating systems.
Yes, if you are building a real-time speech recognition system that needs Kaldi-compatible fbank features without external dependencies. The package is well-maintained, permissively licensed, and has broad platform coverage. However, if your use case is offline batch processing or you already have Kaldi or another audio library integrated, the aging maintenance status (309 days since last release) and lack of recent activity may warrant checking whether active alternatives exist.
Install
kaldi-native-fbank on PyPI
pip
pip install kaldi-native-fbankuv
uv add kaldi-native-fbankpoetry
poetry add kaldi-native-fbankInstalling kaldi-native-fbank
Before you install
Medium install friction due to compiled wheels for multiple Python versions and architectures (cp310–cp313, x86/arm/aarch64, Linux/macOS/Windows), but pre-built binaries are available. Maintenance is aging: last release was 309 days ago, though the repository remains active and the project is not archived.
License in practice
Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions; you must retain license and copyright notices in distributions.
Quickstart
pip install kaldi-native-fbank
import kaldi_native_fbank as knf
opts = knf.FbankOptions()
opts.mel_opts.num_bins = 80
fbank = knf.OnlineFbank(opts)
fbank.accept_waveform(16000, audio_samples)
features = fbank.get_frame(0)
Requires Python >= 3.8.0; audio samples must be provided as a list or array-like object compatible with the C++ backend.
Verify before relying
- Whether the package works reliably on Android as claimed in the description, or if that is aspirational.
- Performance characteristics (latency, throughput) for real-time speech recognition use cases.
- Compatibility with specific speech recognition frameworks beyond the two CMake projects mentioned.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.8.0) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | aging — 309 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 257,692/month — #8,437 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: kaldi_native_fbank-1.22.3-cp310-cp310-macosx_10_15_x86_64.whl; kaldi_native_fbank-1.22.3-cp310-cp310-macosx_11_0_arm64.whl; kaldi_native_fbank-1.22.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; kaldi_native_fbank-1.22.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; kaldi_native_fbank-1.22.3-cp310-cp310-win32.whl; kaldi_native_fbank-1.22.3-cp310-cp310-win_amd64.whl; kaldi_native_fbank-1.22.3-cp311-cp311-macosx_10_15_x86_64.whl; kaldi_native_fbank-1.22.3-cp311-cp311-macosx_11_0_arm64.whl; kaldi_native_fbank-1.22.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; kaldi_native_fbank-1.22.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; kaldi_native_fbank-1.22.3-cp311-cp311-win32.whl; kaldi_native_fbank-1.22.3-cp311-cp311-win_amd64.whl; kaldi_native_fbank-1.22.3-cp312-cp312-macosx_10_15_x86_64.whl; kaldi_native_fbank-1.22.3-cp312-cp312-macosx_11_0_arm64.whl; kaldi_native_fbank-1.22.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; kaldi_native_fbank-1.22.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; kaldi_native_fbank-1.22.3-cp312-cp312-win32.whl; kaldi_native_fbank-1.22.3-cp312-cp312-win_amd64.whl; kaldi_native_fbank-1.22.3-cp313-cp313-macosx_10_15_x86_64.whl; kaldi_native_fbank-1.22.3-cp313-cp313-macosx_11_0_arm64.whl
Tags
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to…
permissive · top 100 on PyPI
huggingface-hubClient library and CLI tool for downloading,…
permissive · top 100 on PyPI
langchainLangChain provides a framework for building…
permissive · top 1,000 on PyPI
hf-xethf-xet provides chunk-based deduplication and…
permissive · top 1,000 on PyPI
tokenizersTokenizers converts raw text into token…
permissive · top 1,000 on PyPI
transformersTransformers provides a unified framework for…
permissive · top 1,000 on PyPI
kaldifstPython wrapper for OpenFst and Kaldi…
permissive · top 15,000 on PyPI
python_speech_featuresExtracts speech features from audio signals for…
permissive · top 15,000 on PyPI
aubioaubio is a Python wrapper around a C library…
copyleft · top 15,000 on PyPI
kaldiioKaldiio reads and writes Kaldi archive (ark)…
unclear · top 5,000 on PyPI
kaldialignComputes edit distance, alignment, and word…
permissive · top 15,000 on PyPI
asteroid-filterbanksProvides PyTorch-based filterbank…
permissive · top 5,000 on PyPI
lhotseLhotse prepares multimodal (speech, audio,…
permissive · top 5,000 on PyPI
GammatoneApplies banks of gammatone filters to audio…
unclear · top 15,000 on PyPI
torchaudioProvides PyTorch-based audio processing,…
permissive · top 5,000 on PyPI
livekit-plugins-sonioxIntegrates Soniox speech-to-text and…
permissive · top 15,000 on PyPI