Skip to content

Object-oriented handling of audio data, with GPU-powered augmentations, and more.

License

Notifications You must be signed in to change notification settings

descriptinc/audiotools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

28468ce · May 10, 2023
Oct 28, 2022
May 10, 2023
Jan 31, 2023
Jan 31, 2023
May 10, 2023
Apr 5, 2021
Feb 14, 2023
Feb 14, 2023
Oct 18, 2022
May 6, 2021
May 10, 2023

Repository files navigation

AudioTools

Object-oriented handling of audio signals, with fast augmentation routines, batching, padding, and more.

Documentation

For documentation, see the docs.

Deploying documentation

To build the documentation, do:

cd docs/
make html
open _build/html/index.html

Once you're satisfied with your docs, push them to the gh-pages branch via

cd docs
bash publish_docs.sh

Quickstart

import audiotools
from audiotools import AudioSignal

signal = AudioSignal("tests/audio/spk/f10_script4_produced.wav", offset=5, duration=5)
signal.play() # Play back the signal in your terminal using ffplay

signal.low_pass(8000) # Low-pass the signal
signal.play() # Play back the low-passed version of the signal

For more, see the documentation.

Install hooks

First install the pre-commit util:

https://pre-commit.com/#install

pip install pre-commit  # with pip
brew install pre-commit  # on Mac

Then install the git hooks

pre-commit install
# check .pre-commit-config.yaml for details of hooks

Upon git commit, the pre-commit hooks will be run automatically on the stage files (i.e. added by git add)

N.B. By default, pre-commit checks only run on staged files

If you need to run it on all files:

pre-commit run --all-files