Gammatone
What it is and what it does
Gammatone is a Python port of Malcolm Slaney's and Dan Ellis' MATLAB gammatone filterbank code for analyzing audio through a perceptual lens. Instead of a standard Fourier-based spectrogram, it applies a bank of gammatone filters—whose bandwidth increases with center frequency—to model how the human auditory system perceives sound. The result is a time-varying spectrum that better matches human hearing than linear frequency analysis, with lower frequencies appearing more spread out and features appearing more intuitively positioned.
The package depends on numpy, scipy, and matplotlib, and runs on Python 3.8+. It can be used as a command-line tool to visualize audio files as gammatone spectrograms, or imported as a library for programmatic signal analysis. The repository is archived and no longer maintained, so it is stable but receives no updates.
Use it for:
- Visualize music or speech in a way that better matches human perception than standard spectrograms.
- Analyze audio signals for research in psychoacoustics or auditory perception modeling.
- Extract perceptually-motivated features from sound for machine learning on audio tasks.
- Teach signal processing concepts by comparing gammatone and Fourier-based representations.
- Process audio in scientific or educational contexts where human hearing models are relevant.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Applies banks of gammatone filters to audio signals to produce perceptually-motivated spectrograms that model how the human ear perceives sound, using numpy and scipy.
Yes, if you need perceptually-motivated audio analysis and can accept an abandoned codebase. The package is stable, has no known vulnerabilities, and low install friction. However, verify the unclear license before use in proprietary work, and do not expect bug fixes or maintenance. Best suited for research, education, or stable production use where no ongoing support is required.
Install
gammatone on PyPI
pip
pip install gammatoneuv
uv add gammatonepoetry
poetry add gammatoneInstalling Gammatone
Before you install
Low friction install with standard scientific dependencies (numpy, scipy, matplotlib). Repository is archived and abandoned as of 2024-09-11, with no active maintenance—suitable for stable use cases but expect no updates or support.
License in practice
License status is unclear; no SPDX identifier or raw license text is available. Verify licensing terms before use in proprietary or redistributed work.
Quickstart
pip install gammatone
import gammatone
# Analyze a .wav file
gammatone FurElise.wav -d 10
Requires Python >= 3.8 and a .wav audio file to analyze.
Verify before relying
- Whether the unclear license permits commercial or proprietary use.
- Current state of the MATLAB reference implementation and whether the port remains accurate.
- Whether the package is suitable for production audio analysis or primarily for research/education.
Package facts
| License | not declared (unclear) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — numpy, scipy, matplotlib |
| Maintenance | abandoned — 703 days since the last release |
| Last repo commit | (repository archived) |
| First released | |
| Downloads | 90,925/month — #13,555 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: Gammatone-1.0.3-py3-none-any.whl
Tags
More Information Analysis packages
A drop-in replacement for Python's standard…
permissive · top 100 on PyPI
pyarrowpyarrow provides Python bindings to Apache…
permissive · top 100 on PyPI
networkxNetworkX provides data structures and…
permissive · top 1,000 on PyPI
snowflake-connector-pythonConnects Python applications to Snowflake data…
permissive · top 1,000 on PyPI
contourpyContourPy calculates contours of 2D…
permissive · top 1,000 on PyPI
snowflake-snowpark-pythonSnowpark Python provides APIs to query and…
permissive · top 1,000 on PyPI
asteroid-filterbanksProvides PyTorch-based filterbank…
permissive · top 5,000 on PyPI
aubioaubio is a Python wrapper around a C library…
copyleft · top 15,000 on PyPI
noisereduceReduces noise in audio and time-domain signals…
permissive · top 15,000 on PyPI
python_speech_featuresExtracts speech features from audio signals for…
permissive · top 15,000 on PyPI
torchaudioProvides PyTorch-based audio processing,…
permissive · top 5,000 on PyPI
vocosVocos is a neural vocoder that synthesizes…
unclear · top 15,000 on PyPI
audiomentationsAudiomentations applies randomized audio…
permissive · top 15,000 on PyPI
PyWaveletsPyWavelets provides discrete, continuous, and…
permissive · top 5,000 on PyPI
openunmixSeparates music into individual stems (vocals,…
permissive · top 15,000 on PyPI
demucsDemucs separates music into individual…
permissive · top 15,000 on PyPI