Skip to main content

Audio separation in Python with the Rapidly SDK

The Rapidly SDK is a model inference library built with audio in mind. Pre-trained models for speech noise suppression, de-reverberation and music stem separation are available out of the box, and we can train models for any use case. Get in touch if you have specific requirements.

Our models are trained specifically for real-time usage, achieving low latencies down to 11 milliseconds in speech separation applications. The models are designed to be small and resource-efficient, with model file sizes down to 241 KB for the smallest noise suppression model.

The Rapidly SDK is built in C++ and is compatible across various architectures. With our Python wrapper, you can easily integrate Rapidly into your Python projects and quickly process files and benchmark our models.

To learn more about Rapidly, visit Rapidly.

Installation

To install the Python wrapper for Rapidly, use pip:

python -m pip install rapidly

Rapidly requires Python 3.

How to Use

To use the API, import it and list the available models:

import rapidly
models = rapidly.list_models()
print(models)

To download and update to the latest models, simply call:

rapidly.update_models()

Process a File

To process a file with Rapidly, use the process_file function:

import rapidly

# List the available models in the models folder.
models = rapidly.list_models()

# Process a file using the first model in the list.
rapidly.process_file(
    model_file_path=models[0],
    input_file_path="path/to/input.wav",
    output_file_path="path/to/output.wav",
    selected_output_bus=0  # Bus 0 is the processed result in most models.
)

Every model has named output buses: the speech models expose the cleaned dialogue plus the removed noise (and reverb), the music model exposes vocals, bass, guitar, drums, piano and residual. You can inspect available buses like this:

rapidly_engine = rapidly.RapidlyEngine()
processor = rapidly_engine.create_processor(models[0], 2, 48000)

num_buses = processor.get_number_of_output_buses()
for i in range(num_buses):
    print(i, processor.get_output_bus_name(i))

Pass the desired bus index as selected_output_bus in process_file.

Models

The models in the models folder use clear, descriptive names. For example, speech-denoise-32ms.v1.1.rapidly indicates a model designed to denoise speech with a latency of 32 ms. The micro size variant (e.g. speech-denoise-micro-32ms.v1.1.rapidly) is a compact build of the same model for CPU-constrained scenarios.

All models within a family (for example, the speech-denoise family) share similar characteristics. For general denoising, we recommend starting with speech-denoise-96ms.v1.1.rapidly to check if it meets your needs, and moving down to shorter latency variants if needed.

If you have specific requirements or challenging audio conditions, we can build customised models optimised for your use case. Feel free to contact us.

process_file uses PySoundFile to read and write audio files. WAV, FLAC, OGG, and MAT formats are supported natively. Other formats require ffmpeg to be installed.

For more information, see the Rapidly documentation.

Metadata

Release files for rapidly 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for rapidly 1.1.0
File
rapidly-1.1.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
rapidly-1.1.0-py3-none-win32.whl Python 3 none Windows x86-32 Details
rapidly-1.1.0-py3-none-manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
rapidly-1.1.0-py3-none-manylinux1_x86_64.whl Python 3 none Linux glibc 2.5+ x86-64 Details
rapidly-1.1.0-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
rapidly-1.1.0-py3-none-macosx_10_9_x86_64.whl Python 3 none macOS 10.9+ x86-64 Details

Total release size: 60.0 MB

Release files / rapidly-1.1.0-py3-none-win_amd64.whl

Download URL rapidly-1.1.0-py3-none-win_amd64.whl
Size 9.9 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
fa211062826df7c9c5871623f427f6a567ee3fa69e9a2c3b8a24649e8b2504fd
BLAKE2b-256 checksum
How to use checksums
c284af2414bf29ba17ae0908aceddc488e8844f43a7e9c0950ab01fba6ab8d43
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release files / rapidly-1.1.0-py3-none-win32.whl

Download URL rapidly-1.1.0-py3-none-win32.whl
Size 9.0 MB
Tags Python 3 Windows x86-32
SHA-256 checksum
How to use checksums
380f3ca675acf90753ba4037d22cd1cb800901a686feba337858e1fe22665a69
BLAKE2b-256 checksum
How to use checksums
b559bf7794c8789584728ed9ee1920d54b9e22ab4655e84041527dac078ff592
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release files / rapidly-1.1.0-py3-none-manylinux2014_aarch64.whl

Download URL rapidly-1.1.0-py3-none-manylinux2014_aarch64.whl
Size 8.4 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
13270b88cf05dcc07a895790f57133a2b0eae78110701719c468f8a4cf0201d6
BLAKE2b-256 checksum
How to use checksums
d908319279a90f4b7de23e733f10e969a9af11111833b0277d940c108feb55bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release files / rapidly-1.1.0-py3-none-manylinux1_x86_64.whl

Download URL rapidly-1.1.0-py3-none-manylinux1_x86_64.whl
Size 10.5 MB
Tags Linux glibc 2.5+ x86-64 Python 3
SHA-256 checksum
How to use checksums
537cd4601b45b989e9bab9fe46d88b964be961a9dad0be064e952a76d451a235
BLAKE2b-256 checksum
How to use checksums
9a3f5d4ac8b9782463dbf9ddd80372b296ab1fbe2f3a2b9d87a7dbfa8284b68d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release files / rapidly-1.1.0-py3-none-macosx_11_0_arm64.whl

Download URL rapidly-1.1.0-py3-none-macosx_11_0_arm64.whl
Size 11.1 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
155e54c89b69eade449b95b11f7b411056b2521781c1ca9177b9fa898ce1e540
BLAKE2b-256 checksum
How to use checksums
243507b3dd7eee28c59f3924ce5bd82f22c071991c7ab2c8cc7bcca91c2322a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release files / rapidly-1.1.0-py3-none-macosx_10_9_x86_64.whl

Download URL rapidly-1.1.0-py3-none-macosx_10_9_x86_64.whl
Size 11.1 MB
Tags Python 3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
0cad7de3b794af9c559ee28cd5b961391e2377405b5f28b00fb4d1a8dec02c77
BLAKE2b-256 checksum
How to use checksums
d84fd9bdf238ca43a1ee9880b14def77c9f5ca8e0713ae9367684eb5db74b4dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release history Release notifications | RSS feed

This release

1.1.0 This release

6 release files

1.0.5

6 release files

1.0.4

4 release files

1.0.3

4 release 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