Skip to main content

Real-time raw speech enhancement with deep state-space modeling

Project description

aTENNuate (paper)

aTENNuate is a network that can be configured for real-time speech enhancement on raw audio waveforms. It can perform tasks such as audio denoising, super-resolution, and de-quantization. This repo contains the network definition and a set of pre-trained weights for the aTENNuate model.

Note that the repo is meant for denoising performance evaluation on custom audio samples, and is not optimized for inference. It also does not contain the recurrent configuration of the network, so it cannot be directly used for real-time inference by itself. Evaluation should ideally be done on a batch of .wav files at once as expected by the denoise.py script.

Please contact Brainchip Inc. to learn more on the full real-time audio denoising solution. And please consider citation our work if you find this repo useful.

Quickstart

One simply needs a working Python environment, and run the following

pip install attenuate

To run the pre-trained network on custom audio samples, simply put the .wav files (or other format supported by librosa) into the noisy_samples directory (or any directory of your choice), and run the following

import torch
from attenuate import Denoiser

model = Denoiser()
model.eval()

with torch.no_grad():
    model.from_pretrained("PeaBrane/aTENNuate")
    model.denoise('noisy_samples', denoised_dir='test_samples')

# denoised_samples = model.denoise('noisy_samples')  # return torch tensors instead

The denoised samples will then be saved as .wav files in the denoised_samples directory.

Denoising samples

DNS1 synthetic test samples, no reverb

Noisy Sample Denoised Sample
Noisy Sample 1 Denoised Sample 1
Noisy Sample 2 Denoised Sample 2
Noisy Sample 3 Denoised Sample 3

DNS1 real recordings

Noisy Sample Denoised Sample
Noisy Sample 1 Denoised Sample 1
Noisy Sample 2 Denoised Sample 2
Noisy Sample 3 Denoised Sample 3

Project details


Download files

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

Source Distribution

attenuate-0.1.1.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

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

attenuate-0.1.1-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

Details for the file attenuate-0.1.1.tar.gz.

File metadata

  • Download URL: attenuate-0.1.1.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.0

File hashes

Hashes for attenuate-0.1.1.tar.gz
Algorithm Hash digest
SHA256 53da9c8e33690eae0680da7a62edbbdb456645b014a4c1378e3494430aaf0aef
MD5 7016d947397d9ef1231a29f3c79f5ff7
BLAKE2b-256 d995f30d97ef97b60d8a8f3788365668da0353b3e37786e623543155e2a4f301

See more details on using hashes here.

File details

Details for the file attenuate-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: attenuate-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 9.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.0

File hashes

Hashes for attenuate-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 595a35f3118adc709ff430f8162d8f10b7da987f5dd322b25d84bb88f5671c99
MD5 81e32129f91ca02dbf9600354e762cac
BLAKE2b-256 0cbffbea90782cfb34d20a91f59c476d5e5789cb30ac4a77966ef860f2a9eadd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page