- C++ 98.5%
- PowerShell 0.8%
- CMake 0.5%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Adds .spel/forge-manifest.spel so this repo is tracked as a native fux_capacity SpelWork project rather than an external/federated one. Created via 'ritual init --domain fux_capacity --project pedalboardx8', then 'ritual repo scan' reclassified it: Domain=forge.spelwork, Ext=no (previously forge.federated, external=true, confidence 0.5). |
||
| .agent/workflows | ||
| .forgejo/workflows | ||
| .github | ||
| .spel | ||
| audits | ||
| docs | ||
| documentation | ||
| external | ||
| fonts | ||
| icon | ||
| images | ||
| JUCE@0b817e93ee | ||
| provenance | ||
| scripts | ||
| src | ||
| tests | ||
| vectors | ||
| .clang-format | ||
| .clangd | ||
| .geminiignore | ||
| .gitignore | ||
| .gitmodules | ||
| AGENTS.md | ||
| AI_NUTRITION.md | ||
| ARCHITECTURE.md | ||
| BUGFIX_ROADMAP.md | ||
| BUNDLED_PRODUCTS.md | ||
| CHANGELOG.md | ||
| ChangeLog.txt | ||
| CLAUDE.md | ||
| CMakeLists.txt | ||
| CMakePresets.json | ||
| CODE_OF_CONDUCT.md | ||
| ColourSchemeColours.txt | ||
| CONTRIBUTING.md | ||
| crash_log.txt | ||
| icon.ico | ||
| INSTANT_SCRATCH_CAPTURE_HANDOFF_2026-06-05.md | ||
| juceNiallEdits.txt | ||
| LESSONS.md | ||
| license.txt | ||
| LICENSE_STATUS.md | ||
| MAINTAINERS.md | ||
| P0_GIG_SPEED_FEATURES.md | ||
| package-lock.json | ||
| package.json | ||
| Pedalboard2.jucer | ||
| Pedalboard3 Patch File(6).pd | ||
| PROVENANCE.md | ||
| readme.md | ||
| resource.h | ||
| Resources.rc | ||
| ROADMAP.md | ||
| SECURITY.md | ||
| STATE_OF_PROJECT.md | ||
| TESTLATER.md | ||
| THIRD_PARTY_LICENSES.md | ||
| UI_POLISH_2_WEEK_HANDOFF.md | ||
| UI_POLISH_ROADMAP_UPGRADE.md | ||
| UI_POLISH_TASK_BOARD.md | ||
| UI_SCALE_HANDOFF_2026-05-28.md | ||
Pedalboard3
A free, open-source VST3 plugin host for live performance and studio workflows.
What It Is
Pedalboard3 is a standalone application that lets you load VST3 plugins, wire them together on a visual canvas, and switch between patches for live performance or practice. Think of it as a modular plugin host — you build signal chains by dragging cables between nodes, then save and recall them as patches in a setlist.
It started as Niall Moody's Pedalboard2 (2011-2013), a simple VST2 host built on JUCE 1.x. That project was abandoned after version 2.14. This fork modernizes the entire codebase for current plugin formats and adds the features you'd actually need to use it on stage or in a studio.
Features
Plugin Hosting
- Native 64-bit VST3 hosting
- Out-of-process plugin scanner with timeout protection — a crashing plugin won't take down the host
- Automatic plugin blacklisting with crash recovery
- Plugin search, favorites, recent plugins, and categorized menus
- Effect Rack — nest an entire plugin chain inside a single node
Neural Amp Modeling
- Built-in NAM processor for loading
.namneural amp models - Integrated Tone3000 browser for searching, previewing, and downloading models
- OAuth login and background download management with local caching
Canvas & Navigation
- Drag-and-drop plugin wiring with bezier cables
- Zoom (scroll wheel), pan (click-drag), and fit-to-screen
- Undo/redo for all graph operations
- Smooth viewport scrolling with generous padding
Live Performance
- Stage Mode (F11) — fullscreen view with large patch name, next-patch preview, and VU meters
- Setlist management with drag-and-drop reordering
- Glitch-free patch switching via crossfade mixer
- Background plugin preloading for instant transitions
- Instant scratch capture with synchronized raw DI + wet output takes
Mixing & Metering
- DAW-style mixer node — N strips with gain faders, pan knobs, mute/solo/phase, stereo toggle
- DAW splitter node — 1 stereo input to N outputs with per-strip controls
- Master bus insert rack for global effects processing
- Per-channel master gain controls (up to 16 channels)
- Professional VU meters with gradient fill, peak hold, dB scale ticks, and glow
Ableton Link Audio
- GPL-only Ableton Link 4.0 integration, built into the non-commercial distribution
- Dedicated Options > Link Audio Settings screen for opt-in, peer naming, and live peer/channel status; disabled by default
- Publishes post-master output with up to 16 discrete channels to Link Audio peers on the local network
- Receives the first discovered remote channel through the routable built-in
Link Audio Inputgraph source
MIDI
- MIDI CC mapping with learn mode, custom ranges, latch/toggle, channel filtering
- MIDI file player with transport, tempo control, and loop
- Transpose, rechannelize, and keyboard split processors
- Virtual MIDI keyboard for testing without hardware
- Lock-free FIFO dispatch — all MIDI parameter control is RT-safe
Control Surfaces & OSC
- Generic control-surface automation layer for MIDI CC and OSC controllers
- Eight user slots that can target built-in actions or plugin parameters
- Built-in targets for transport, patch navigation, master gain, panic, and Stage Mode
- Optional MIDI and OSC feedback output with persisted routing
Built-in Processors
- Audio Input / Output (multi-channel, with per-channel gain and VU)
- Chromatic tuner (needle + strobe modes, YIN detection)
- Tone generator (sine, square, saw, triangle, noise)
- Oscilloscope
- File player, looper, metronome, audio recorder
- A/B splitter and mixer for parallel routing
- Notes node (markdown rendered) and label node
- IR loader for cabinet simulation
Themes
- 5 built-in colour schemes: Midnight, Daylight, Synthwave, Deep Ocean, Forest
- Semantic colour token system for consistent theming across the entire UI
- Inter font family for clean typography
Installation
Windows (64-bit)
- Download the latest release from the GitHub Releases page.
- Extract
Pedalboard3.exeto your preferred location. - Run the app and scan plugins from Options > Plugin List.
Build From Source
Requirements:
- Visual Studio 2022 (Windows)
- CMake 3.22+
- Git
git clone --recursive https://github.com/peterswimm/Pedalboard3.git
cd Pedalboard3
git submodule update --init --recursive
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release
Output: build/Pedalboard3_artefacts/Release/
The build prefers the vendored external/NeuralAmpModelerCore checkout when present and falls back to fetching NeuralAmpModelerCore during configure if that submodule is unavailable.
The non-commercial build includes Ableton Link Audio by default. To exclude it,
configure with -DPedalboard3_ENABLE_LINK_AUDIO=OFF.
Quick Start
- Double-click the canvas to add a plugin or processor.
- Drag from an output pin to an input pin to create a connection.
- Use the patch bar at the bottom to save, load, and switch patches.
- Press F11 for Stage Mode.
Settings Location
| OS | Path |
|---|---|
| Windows 10/11 | %APPDATA%\Pedalboard3 |
| macOS | ~/Library/Application Support/Pedalboard3 |
Project Status
Active development, currently in the release-hardening phase. Core workflows such as plugin hosting, live patch switching, NAM loading, scratch capture, and control-surface automation are implemented. Remaining work is hardware QA, packaging, and release documentation cleanup.
For details, see:
- CHANGELOG.md — what changed and when
- ROADMAP.md — what's planned
- ARCHITECTURE.md — how it's built
- STATE_OF_PROJECT.md — current status snapshot
Testing
Catch2 coverage spans signal path, plugin lifecycle, MIDI mapping, scratch capture, stage layout, UI regression harnesses, graph management, and mutation testing:
.\build\tests\Release\Pedalboard3_Tests.exe
Contributing
This repository is maintained with a single-developer workflow.
- Work on the requested branch or create a local
codex/feature branch. - Commit focused changes with clear notes and test evidence.
- Push the branch directly when backup or publication is needed.
Pull requests are not the default workflow for this repo.
Credits
- Original Author: Niall Moody (2011)
- Modernization: Eric Steenwerth (2024-2026)
- Current Stewardship: Peter Swimm, Toilville LLC / Spelwork (2026-)
- Framework: JUCE
Provenance and AI Transparency
Pedalboard3 is a maintained public continuation of Pedalboard2. We preserve upstream attribution, track maintained dependency forks, and require human review of material AI-assisted changes.
License
The repository currently carries GPLv3 text in license.txt. The final public
binary-release posture must be confirmed against JUCE's AGPLv3 or commercial
license path; see LICENSE_STATUS.md.
Original graphics and sounds are under the Creative Commons Sampling Plus license.