Rapidly SDK

May 28, 2026 · View on GitHub

The Rapidly SDK is a set of AI models for audio separation, built to process audio on-device and in realtime. By Rapidly Labs AS.

A lean, cross-platform C++ library built for low latency and small footprint. Customer applications embed the engine binary and load Rapidly's pre-trained models to add real-time audio separation (speech denoise, dereverb, and more) to phone calls, broadcast audio, voice assistants, and other audio pipelines.

Why use Rapidly?

  • Small footprint
  • Light on CPU
  • No GPU requirements
  • Low latency
  • Cross-platform
  • Easy to integrate

Install

LanguageInstructions
C / C++Embed a binary from bin/<platform>/ and include include/RapidlyEngine.h. See examples/process-file/ for a CLI walkthrough.
Swift / iOS / macOSIn Xcode: File → Add Package Dependencies → paste https://github.com/rapidly-labs/rapidly-sdk, then import RapidlyEngine for the Swift-native RapidlyEngine class. Or drag bin/RapidlyEngine.xcframework into your Xcode project's Frameworks section and import RapidlyEngineC for the C API.
Kotlin / AndroidIn Gradle: implementation("io.rapidly:rapidly-sdk:1.0") from Maven Central, then import io.rapidly.engine.RapidlyEngine for the Kotlin-native class. Or download rapidly-sdk-1.0.aar from the GitHub release into your app's libs/ and add implementation(files("libs/rapidly-sdk-1.0.aar")). Bundles arm64-v8a. minSdk 26.
Pythonpip install rapidly (PyPI). See bindings/python/README.md.

Documentation: https://rapidly.io/docs

Quickstart

C / C++

#include "RapidlyEngine.h"

rapidlyAddLicense("lk_...");                       // licence first
auto p = rapidlyCreateProcessor(
    "models/speech-denoise-32ms.v1.0.rapidly",     // model file
    2,                                             // channels
    44100                                          // sample rate
);
rapidlyAddAudioInterleaved(p, input,  numSamples);
rapidlyGetAudioInterleaved(p, output, numSamples);

Swift (iOS / macOS)

import RapidlyEngine

RapidlyEngine.addLicense("lk_...")               // licence first
let engine = RapidlyEngine(
    modelFilepath: "models/speech-denoise-32ms.v1.0.rapidly",
    numOfChannels: 2,
    sampleRate: 44100
)
engine?.addAudioInterleaved(pcmChannels: inputBuffer, numOfSamples: numSamples)
engine?.getAudioInterleaved(pcmChannels: outputBuffer, numOfSamples: numSamples)

Python

import rapidly

engine = rapidly.RapidlyEngine()
engine.add_license("lk_...")
processor = engine.create_processor("models/speech-denoise-32ms.v1.0.rapidly", 2, 44100)
# feed audio in / out via processor methods

For AI-assisted integration, see AGENTS.md.

What's in this distribution

FolderContents
bin/Native binaries, one folder per platform, plus RapidlyEngine.xcframework for Apple
include/Single public header RapidlyEngine.h
models/Pre-trained Rapidly model files (.rapidly)
bindings/swift/Swift wrapper source (canonical install: SwiftPM via Package.swift at repo root)
bindings/kotlin/Kotlin wrapper source (canonical install: implementation("io.rapidly:rapidly-sdk:1.0") from Maven Central)
bindings/python/Python wrapper (pip install rapidly)
examples/Working integration demos: process-file, raspberry-pi
Package.swiftSwift Package Manager manifest (Apple platforms)
LICENSECommercial licence terms
CHANGELOG.mdPer-version release notes
AGENTS.mdAI agent integration guide

Models

The SDK ships with two model families.

Speech denoise removes background noise from speech and outputs cleaned dialogue and noise as separate busses.

Speech denoise + dereverb removes both background noise and room reverb, and outputs cleaned dialogue, reverb, and noise as separate busses. Use this when the input has significant room reverb that you want to suppress (or capture as a separate bus).

Each family ships at four latencies, plus a micro size variant of the 32 ms model for CPU-constrained scenarios. The size variant (micro) appears between the family name and the latency in the filename — e.g. speech-denoise-micro-32ms.v1.0.rapidly.

Model fileLatencyFile sizeReal-time factor*Output busses
speech-denoise-11ms.v1.0.rapidly11 ms615 KB13xDialogue, Noise
speech-denoise-21ms.v1.0.rapidly21 ms851 KB13xDialogue, Noise
speech-denoise-32ms.v1.0.rapidly32 ms854 KB27xDialogue, Noise
speech-denoise-micro-32ms.v1.0.rapidly32 ms (compact)241 KB125xDialogue, Noise
speech-denoise-96ms.v1.0.rapidly96 ms925 KB29xDialogue, Noise
speech-denoise-dereverb-11ms.v1.0.rapidly11 ms615 KB12xDialogue, Reverb, Noise
speech-denoise-dereverb-21ms.v1.0.rapidly21 ms851 KB12xDialogue, Reverb, Noise
speech-denoise-dereverb-32ms.v1.0.rapidly32 ms854 KB25xDialogue, Reverb, Noise
speech-denoise-dereverb-micro-32ms.v1.0.rapidly32 ms (compact)241 KB115xDialogue, Reverb, Noise
speech-denoise-dereverb-96ms.v1.0.rapidly96 ms926 KB27xDialogue, Reverb, Noise

*Real-time factor measured on a single core of an AMD RYZEN AI MAX+ 395.

All models are trained on 48 kHz audio, but the engine accepts other sample rates.

Picking a model

Choose by latency budget:

  • 11 ms or 21 ms: live communication, conferencing, real-time monitoring. Lowest delay; trades off some suppression strength.
  • 32 ms: balanced choice for most production use. Strong noise / reverb reduction with moderate latency.
  • micro 32 ms: same latency as 32 ms but a compact 241 KB file with a 4-5x higher real-time factor. Choose this when you need to run many simultaneous streams per CPU.
  • 96 ms: highest fidelity. Best speech clarity; suitable for recording, post-production, and offline processing where latency does not matter.

Choose between speech-denoise and speech-denoise-dereverb by whether you want room reverb removed (or exposed as a separate bus). The dereverb family is a good fit for desktop microphones in untreated rooms and for archive cleanup; the plain denoise family preserves the room's natural reverb.

Licences

The SDK enforces licence entitlements locally; no network access is required. A Rapidly licence (lk_...) is issued by Rapidly Labs and encodes which models and latency variants your application may use without a watermark. Licence coverage is a quality gate, not an availability gate: any model still loads and runs, but a model not covered by a valid licence (or any model used with no licence) operates in a watermarked demo mode that audibly degrades its output.

For commercial licensing enquiries: sales@rapidly.io For technical support and licence issuance: support@rapidly.io

Supported platforms

Linux x64, Linux arm64, Windows x64, Windows x86, macOS (universal), iOS, Android (arm64-v8a).

WebAssembly is coming in a future release. See CHANGELOG.md for the full v1.0 scope.