A Python library for audio data augmentation. Inspired by albumentations. Useful for machine learning.
Project description
Audiomentations
A Python library for audio data augmentation. Inspired by albumentations. Useful for deep learning. Runs on CPU. Supports mono audio and multichannel audio. Can be integrated in training pipelines in e.g. Tensorflow/Keras or Pytorch. Has helped people get world-class results in Kaggle competitions. Is used by companies making next-generation audio products.
Need a Pytorch-specific alternative with GPU support? Check out torch-audiomentations!
Setup
pip install audiomentations
Usage example
from audiomentations import Compose, AddGaussianNoise, TimeStretch, PitchShift, Shift
import numpy as np
augment = Compose([
AddGaussianNoise(min_amplitude=0.001, max_amplitude=0.015, p=0.5),
TimeStretch(min_rate=0.8, max_rate=1.25, p=0.5),
PitchShift(min_semitones=-4, max_semitones=4, p=0.5),
Shift(min_fraction=-0.5, max_fraction=0.5, p=0.5),
])
# Generate 2 seconds of dummy audio for the sake of example
samples = np.random.uniform(low=-0.2, high=0.2, size=(32000,)).astype(np.float32)
# Augment/transform/perturb the audio data
augmented_samples = augment(samples=samples, sample_rate=16000)
Documentation
See https://iver56.github.io/audiomentations/
Transforms
- AddBackgroundNoise
- AddGaussianNoise
- AddGaussianSNR
- AddShortNoises
- AdjustDuration
- AirAbsorption
- ApplyImpulseResponse
- BandPassFilter
- BandStopFilter
- Clip
- ClippingDistortion
- Gain
- GainTransition
- HighPassFilter
- HighShelfFilter
- Lambda
- Limiter
- LoudnessNormalization
- LowPassFilter
- LowShelfFilter
- Mp3Compression
- Normalize
- Padding
- PeakingFilter
- PitchShift
- PolarityInversion
- Resample
- Reverse
- RoomSimulator
- SevenBandParametricEQ
- Shift
- SpecChannelShuffle
- SpecFrequencyMask
- TanhDistortion
- TimeMask
- TimeStretch
- Trim
Changelog
See https://iver56.github.io/audiomentations/changelog/
Acknowledgements
Thanks to Nomono for backing audiomentations.
Thanks to all contributors who help improving audiomentations.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file audiomentations-0.31.0.tar.gz
.
File metadata
- Download URL: audiomentations-0.31.0.tar.gz
- Upload date:
- Size: 44.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3a2f3f78132dc06a6451849efc96ef1b21552f83d399aaf429a7292f4e5a6ad4 |
|
MD5 | eebd59266145a30dbb8a852236cf8c71 |
|
BLAKE2b-256 | e6b981d8d32b6021a676e9576735b1c047e572621cc800f4f97eb4ca45104dca |
File details
Details for the file audiomentations-0.31.0-py3-none-any.whl
.
File metadata
- Download URL: audiomentations-0.31.0-py3-none-any.whl
- Upload date:
- Size: 70.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd130989a9bad50e2729c872d8cc9a52f306d8e3b132382329fe0434cfc0b1b9 |
|
MD5 | f7bc7b6bce569e6ce8cabe64c85b6577 |
|
BLAKE2b-256 | 5977d9aa7d739ef2441605cdd76320d596c8feca4689fd334cb5124e7fae796d |