Skip to main content

Audio ML Spec Tools

Convenience functions for generating ML features from audio data. Breaks audio ML dependencies on torchaudio. Unlike pytorch features, these functions can be exported to ExecuTorch and ONNX with no issues.

Motivation

Except in specific circumstances like wav2vec, raw audio has proven to be a much worse input for ML models than spectrogram-based features across a wide variety of problem domains, including environmental sound classificarion (Guzhov et al. (2021)), singing technique classification (Yamamoto et al. (2021)), and ship classification (Xie, Ren, and Xu (2024)).

There is no scientific consensus on the relative benefits of mel-scale spectrograms, linear spectrograms, and MFCCs. Different researchers have shown good results with each type of spectrogram; see respectively Raponi, Oligeri, and Ali (2021), Jung at al. (2021), and Razani et al (2017).

With this library, you can easily try as many feature extraction methods as you want to see what works for your use case.

Prerequisites

  • Python 3.12 runtime
  • pip for package installation
  • Note that torchcodec depends on a system installation of FFmpeg

Installation

  • Install using pip:
pip install AudioMlSpecTools

Local Installation

Install the dependencies and library with pip:

pip install .

Usage

See examples/features.py.

Testing

# If needed, install test dependencies
# pip install .[test]

python3 -m coverage run -m unittest discover -s test -p "*_test.py" && python -m coverage report --skip-covered
python -m coverage html

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

  • Ryan Quinn - Initial work

License

MIT.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

audiomlspectools-0.10.0.tar.gz (16.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

audiomlspectools-0.10.0-py3-none-any.whl (23.2 kB view details)

Uploaded Python 3

File details

Details for the file audiomlspectools-0.10.0.tar.gz.

File metadata

  • Download URL: audiomlspectools-0.10.0.tar.gz
  • Upload date:
  • Size: 16.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for audiomlspectools-0.10.0.tar.gz
Algorithm Hash digest
SHA256 6b560460fecf6ba7d1601143a723a37f8dc726e171a08f21fa6cbec541545f26
MD5 bd6e45306ca202be0c7c74297c7a5271
BLAKE2b-256 17cf45d48da90cdcc00f20f37a83ab81701a34f348108519293408dc2484ab3d

See more details on using hashes here.

File details

Details for the file audiomlspectools-0.10.0-py3-none-any.whl.

File metadata

File hashes

Hashes for audiomlspectools-0.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 606b07280b1a5aed4ce5f0777163d782dfaf3683e7596ad21f4b864cb4ff366d
MD5 95894a077551822a5b8ef577de3ca6c6
BLAKE2b-256 b97cb6a30b05e87f78699edbf36a4def44d6f17c9d43eb7f0951c54dc2a14734

See more details on using hashes here.

Release history Release notifications | RSS feed

0.15.0

2 files

0.14.0

2 files

0.13.0

2 files

0.12.0

2 files

0.11.2

2 files

0.11.1

2 files

0.11.0

2 files

This release

0.10.0 This release

2 files

0.9.0

2 files

0.8.0

2 files

0.7.0

2 files

0.6.0

2 files

0.5.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page