Build your rig once. Use it everywhere.
Professional audio shouldn't live inside a black box.
OpenRig is an open-source real-time audio platform written in Rust. The software is the product. The hardware is just where it runs.
If you want professional guitar processing today, you buy a black box. Helix, Quad Cortex, Axe-Fx — thousands of dollars per musician. Closed firmware. What shipped in the box is what you get, and what you'll never be allowed to change.
Multiply that by an entire band and the math stops working.
OpenRig started from a simple question:
What if a single node processed the audio of the whole band, and each musician controlled their own chain from their phone?
Picture the stage. Guitar, bass, keys, vocals — all plugged into one node. That node can be a pedalboard on the floor, a small box in a gig bag, or a desktop backstage. The form factor doesn't matter. The software is the same.
Each musician opens an app on their phone or tablet and controls their own effect chain. Anyone who prefers hardware plugs in a pedalboard that's just a terminal — connected over USB, Bluetooth, or network via gRPC. Only one person in the band needs the hardware. The rest use what's already in their pocket.
That's the destination. Below is what already works, and what's coming next.
The foundation that makes the bigger vision possible already runs on every desktop platform:
- Standalone desktop app for macOS (Apple Silicon + Intel), Linux (x86_64 + aarch64), and Windows (x86_64).
- Truly parallel chains. Each input is an isolated audio runtime — no shared buffers, no contended locks, no cross-stream CPU spikes. Two guitars on the same interface? Two completely independent rigs in the same project, processed in parallel.
- 560+ registered models across 16 block types — preamps, amps, cabs, overdrive/distortion/fuzz/boost pedals, delays, reverbs, modulation, dynamics, filters, wah, pitch correction, and 114 acoustic body IRs for piezo/magnetic acoustic pickups. (full catalog with canonical IDs)
- Four audio backends in the same graph. Native Rust DSP for utility, EQ, dynamics, modulation, and reverb. NAM (Neural Amp Modeler) neural captures of real hardware — Marshall Plexi, Mesa Rectifier, EVH 5150, Vox AC30, Klon Centaur, Boss DS-1, Big Muff, and 540+ more. IR convolution for cabinets and acoustic bodies. 100+ bundled LV2 plugins (Guitarix, MDA, TAP, ZAM, Dragonfly, and others). Every block in a chain can come from any backend.
- Real-time visualization built in. A chromatic tuner and a live spectrum analyzer drop into the chain like any other block — see what you hear.
- Open YAML preset format. Presets are plain text — diffable, gist-shareable, scriptable. The
openrig-tone-builderClaude Code skill builds full presets from a song name by researching the original signal chain in public sources and writing the YAML.
📚 Looking for a specific amp, pedal, or cab? The complete catalog — every model, every parameter, every voicing variant, with canonical
MODEL_IDstrings for use in preset YAML — is documented in the Blocks Reference. Start with the Model ID Quick Reference for an alphabetical lookup grouped by block type.
Desktop is the foundation. The product is the band on one node. The path:
- gRPC server — so external clients (phone, tablet, dedicated controller, another OpenRig instance) can drive their own chains over the network in real time.
- Mobile and tablet app — the per-musician control surface. Open it, see your chain, turn knobs.
- Pedalboard as a node — Orange Pi-class hardware running OpenRig with audio I/O on board, low-latency Linux underneath.
- Pedalboard as a terminal — same hardware can run as a physical controller for a remote OpenRig node, talking USB / Bluetooth / network.
- Multi-musician projects — one node hosting independent, isolated chains for guitar, bass, keys, vocals — each controlled from a different surface.
Same software in every form factor. The user's tone goes with them — desktop today, gig bag tomorrow, pedalboard at the venue, server in the rehearsal space. Nothing to re-learn. Nothing to re-license.
Left: block library, organized by brand with hardware-faithful panel art. Right: per-block editor on a Marshall JTM45 capture — exact controls, exact response.
- Install — download a release for your platform, or build from source (see below).
- Configure I/O — pick your audio interface as input and your monitors/headphones as output.
- Build a chain — drop blocks between Input and Output (Tuner → EQ → Drive → Amp → Cab → Reverb is a good start).
- Tweak in real time — click any block to open its editor; turn knobs while you play.
- Save a preset — presets are plain YAML in
~/.openrig/presets/(macOS/Linux) or%APPDATA%\OpenRig\presets\(Windows). Share by copy-paste.
Full walkthrough: Quick Start Guide.
A preset is just YAML. Here's the start of a Frusciante-style "Can't Stop" rhythm chain:
id: red_hot_chili_peppers_-_cant_stop_-_rhythm
name: Red Hot Chili Peppers - Can't Stop (Rhythm)
blocks:
- type: gain
enabled: true
model: cc_boost # MXR Micro Amp clean boost
params: {}
- type: gain
enabled: true
model: boss_ds1 # Boss DS-2 proxy: tone 7, dist 5
params: { tone: 7, dist: 5 }
- type: modulation
enabled: true
model: ensemble_chorus # CE-1 Chorus Ensemble
params: { rate_hz: 0.55, depth: 22.0, mix: 25.0 }
- type: amp
enabled: true
model: marshall_super_100_1966 # Marshall Major proxy
params: {}
# ...post-amp EQ, reverb, limiter, master volumeEvery model: ID is registered in the Blocks Reference Quick Reference. For Claude Code users, the openrig-tone-builder skill generates the full chain from just an artist + song name.
Releases for every supported platform (macOS aarch64/x86_64, Linux x86_64/aarch64, Windows x86_64) are published on the Releases page.
git clone https://github.com/jpfaria/OpenRig.git
cd OpenRig
git submodule update --init --recursive
cargo build --release -p adapter-guiSee the Installation Guide for platform-specific dependencies and troubleshooting.
- Installation Guide — download, build, set up
- Quick Start — first project and signal chain
- Blocks Reference — every model with canonical IDs and parameters
- Presets — create, save, share
- Architecture — crate map, layers, design patterns
- Building — full build guide including the NAM engine and Docker
- Creating Blocks — how to add new audio models
- Audio Backends — Native, NAM, IR, and LV2 internals
OpenRig is open by intent — contributions are welcome and the architecture is designed to make them tractable. Audio processing is split per block type so each model is fully owned by its crate, with zero cross-coupling between brand-specific captures and the rest of the system. The project follows Gitflow with strict code quality standards: zero warnings, zero coupling, single source of truth.
See CONTRIBUTING.md for branching, commits, PRs, and code standards.
Every open item below is tracked as a GitHub issue — that's where progress, design discussion, and PRs live. Star or watch the repo to follow along.
- Standalone desktop app for macOS (Apple Silicon + Intel), Linux (x86_64 + aarch64), and Windows (x86_64) — five platform targets from a single codebase
- Truly parallel chains — each input is an isolated audio runtime, no shared buffers, no contended locks, no cross-stream CPU spikes
- 560+ models across 16 block types, with four audio backends (Native DSP, NAM, IR, LV2) coexisting in the same real-time graph
- Native audio I/O on every platform — Core Audio (macOS), ALSA + JACK (Linux), WASAPI (Windows)
- Real-time chromatic tuner as a first-class block — drop it anywhere in the chain
- Real-time spectrum analyzer as a first-class block — see what you hear
- Multi-language UI — 9 languages today: English (
en-US), Portuguese (pt-BR), Spanish (es-ES), French (fr-FR), German (de-DE), Japanese (ja-JP), Korean (ko-KR), Simplified Chinese (zh-CN), and Hindi (hi-IN); the i18n framework is ready for community contributions - Per-chain instrument filtering — electric guitar, acoustic guitar, bass, voice, keys, drums, or generic — surfaces only relevant blocks
- Multiple I/O blocks per chain with independent device and channel configuration per block
- Block-level bypass — every block can be enabled or disabled live without rebuilding the chain
- User-supplied IR and NAM loaders — drop any
.wavimpulse response or.namcapture into the chain at runtime - Open YAML preset format — diffable, gist-shareable, scriptable; canonical
MODEL_IDregistry documented in the Blocks Reference - AI-assisted preset building — the
openrig-tone-builderClaude Code skill ships in the repo and writes full presets from a song or artist name
- Snapshots / scenes (#321)
- Setlist / live performance mode (#325)
- Looper, multi-layer (#323)
- Backing tracks / audio player (#324)
- Expression pedal mapping over MIDI CC (#326)
- Global tap tempo / preset BPM (#322)
- Parallel routing / chain splits (#328)
- A/B compare (#327)
- Master mixer per stream (#344)
- Native DSP rewrites of every block type from first principles, papers and no external capture dependency (#380 umbrella, with sub-issues #381–#392)
- Manual component models for the OpenRig benchmark amps (#347)
- NAM → native generators for amps and preamps (#282, #283)
- IR → native generators for cabinets and acoustic bodies (#284, #285)
- User-authored plugin wizard for NAM / IR import (#287)
- gRPC server for remote chain control over the network
- Mobile and tablet app as the per-musician control surface
- Pedalboard form factor — Orange Pi-class hardware, low-latency Linux
- Pedalboard-as-terminal — USB / Bluetooth / network controller for remote nodes
- Multi-musician projects on a single node
-
openrig-cli— scriptable CLI client over gRPC (#298) - OpenRig Hub — community plugin marketplace (#309)
- VST3 / AU plugin
The current 560+ models are the seed. Per-block expansion is tracked under the planned label, including a community-driven LV2/VST3 import pipeline (#372, #374, #379) and Airwindows mass integration (#373).
OpenRig is licensed under the GNU General Public License v3.0 — the rig you build belongs to you. Forever.



