Skip to content

Repository files navigation

License: AGPLv3 C++17 JUCE 8 Platform Formats YouTube

OpenVoxTuner Icon

OpenVoxTuner

Real-time pitch correction & harmony generation for vocals

VST3 / AU / Standalone — built with JUCE 8 (C++17)

Features • Screenshots • License • Build • Website • Docs

Français — Deutsch — Español — 日本語 — 中文

Screenshots

OpenVoxTuner main window

More screenshots...

Curve Editor Piano Roll View

Harmony types

Download

OpenVoxTuner is distributed as GitHub Releases for each version:

Platform Artifact Notes
Windows OpenVoxTuner_Windows_Installer.exe Installer (Inno Setup)
macOS OpenVoxTuner-macOS.zip Drag-and-drop: VST3 + Standalone (universal arm64/x86_64) — not notarized
macOS OpenVoxTuner-macOS.pkg Signed & notarized installer: VST3 → /Library/Audio/Plug-Ins/VST3, AU → /Library/Audio/Plug-Ins/Components, Standalone → /Applications

The macOS .pkg installer is signed & notarized and includes the VST3, AU and Standalone formats. The drag-and-drop .zip is not notarized — if Gatekeeper blocks its contents, right-click → Open, or use the .pkg installer instead.

Table of Contents

Download • Screenshots • Features • Why OpenVoxTuner? • Repository Structure • Licensing • Support the Project • Developer License • Contributing • Build • Documentation


Features

Pitch Correction

  • Auto mode — scale quantization with 14 scale types (Major, Minor, Pentatonic, Blues, Dorian, Phrygian, Lydian, Mixolydian, Locrian, Chromatic, Custom...)
  • Graphic mode — draw your own pitch curve (graphical editor with snap, grid, copy/paste, undo/redo)
  • Correction Mode — Modern (tight) or Transparent (gentle) character
  • Speed & Amount — retarget envelope + dry/wet blend for natural or robotic response
  • Humanize — add subtle random variation for a more natural sound (0-50 cents)
  • Vibrato Preserve — retain the singer's natural vibrato through correction (0-100%)
  • Voice Type — constrains pitch detection range (Universal, Bass, Baritone, Tenor, Alto, Soprano)
  • Latency Mode — Direct Monitoring, Low Latency, Quality, Safe

Key Detection

  • Auto — real-time key detection from audio input (Krumhansl-Schmuckler profiles)
  • OpenVoxKey — companion bridge via shared memory IPC
  • Sidechain — analyze accompaniment through dedicated sidechain bus

Effects

  • Formant Processing — 3 modes (Legacy, MultiFormant, Allpass) with multiple preservation strategies (LPC cross-synthesis available)
  • Reverb — built-in reverb with adjustable mix
  • Noise Gate — input gate with threshold control (-80 to 0 dB)
  • Upward Compressor — lifts quiet passages before pitch detection

Harmony Engine

  • Use Voice mode — pitch-shifts your live vocal into 1-4 harmony voices with stereo panning
  • Synth mode — synthesized harmony tones (Choir, Organ) with adjustable tone color
  • 22 harmony types — intervals (3rd/4th/5th/octave below/above), Vocal Stack, Power Chord, Drone, Unison...
  • Harmony controls — Gain Match (auto RMS balancing), Follow Lead, per-voice Attack, Harmony Formant Shift (-5 to +5 st)
  • Harmony traces overlay in the curve editor

Curve Editor & Visualizer

  • Graphical pitch curve editor with point drag, snap to scale/grid, copy/paste, undo/redo
  • Real-time pitch visualization with input/output/harmony traces
  • Piano keyboard with automatic note highlighting
  • Waveform overlay (Line, Mirror, or Spectral display)
  • Export as PNG (2x resolution)

ARA2 Integration

  • ARA2 support — reads key, scale, and time signature from your DAW timeline
  • Time signature-aware measures ruler with auto-scroll
  • Multi-signature support (time signature changes mid-project)
  • Waveform overlay synced to the DAW timeline

ARA2 syncs the plugin to your DAW timeline (key/scale, time signature, playhead, waveform). OpenVoxTuner remains a real-time effect — it does not provide offline, note-level editing like dedicated pitch editors.

A/B Comparison & Morphing

  • A/B slots — save and recall two complete plugin states
  • Morph slider — continuously interpolate between A and B (all parameters smooth)
  • State persisted across sessions

Additional

  • MIDI note output (generated from detected pitch)
  • MIDI target (incoming MIDI controls correction pitch)
  • Curve presets with card-based gallery UI
  • Global undo/redo (all automatable parameters)
  • Dark/Light theme
  • Stereo processing, low-latency PSOLA pitch shifting
  • Standalone mode with internal 120 BPM transport

Why OpenVoxTuner?

  • Open source by design — every line of DSP, UI, and preset logic is public. No black boxes, no telemetry, no feature paywalls. You can read exactly how your voice is processed.
  • AGPLv3 for freedom — the license guarantees the project stays free and open. Anyone can use it (even commercially), and any improvements must be shared back with the community.
  • ARA2 native — key, scale, and time signature are read directly from your DAW project, so the plugin follows your arrangement without manual setup.
  • Built for real vocals — YIN pitch detection, formant-preserving PSOLA, and a graphical curve editor are tuned for the nuances of sung performances, not just proof-of-concept demos.

AI-Assisted Development

OpenVoxTuner uses AI coding assistants to accelerate development, always under strict human supervision. Every line of code is reviewed, tested, and fully open for community audit. No unverified AI-generated code is merged.

Repository Structure

.
├─ Source/
│  ├─ dsp/                        # DSP modules
│  │  ├─ IPitchDetector.h         # Abstract pitch detector interface
│  │  ├─ YinPitchDetector.*       # YIN algorithm (active)
│  │  ├─ ScaleQuantizer.*         # Scale quantization engine
│  │  ├─ PitchShifter.*           # PSOLA pitch shifter
│  │  ├─ RetargetEnvelope.*       # Speed envelope smoother
│  │  ├─ FormantPreserver.*       # Formant compensation filter
│  │  ├─ NoiseGate.h              # Input noise gate (RMS-based, hysteresis)
│  │  ├─ PitchCurve.*             # Curve data model
│  │  ├─ PresetMorpher.h          # A/B morphing engine
│  │  ├─ HarmonyEngine.*          # Harmony synthesis engine
│  │  ├─ PitchDetector.*          # Original YIN reference (not compiled)
│  │  └─ NoteUtils.h / IPitchShifter.h
│  ├─ ui/                         # UI components
│  │  ├─ PitchCurveEditor.*       # Curve editor component
│  │  ├─ PitchVisualizer.*        # Pitch visualisation
│  │  ├─ PianoKeyboard.*          # Piano keyboard widget
│  │  ├─ ScaleKeyboardComponent.* # Scale keyboard display
│  │  ├─ LookAndFeel.*            # Custom look and feel
│  │  ├─ OVTTheme.h               # Theme colours and shared waveform renderer
│  │  ├─ OVTFonts.h               # Font helpers
│  │  └─ OVTLanguages.h           # Multi-language translations
│  ├─ external/presonus/          # PreSonus plugin extensions (Studio One)
│  ├─ resources/                  # Binary resources (BuildInfo.h.in)
│  ├─ PluginProcessor.*           # Main audio processor
│  └─ PluginEditor.*              # Main editor UI
├─ scripts/                       # Build and development scripts
│  ├─ build.ps1                   # Windows build
│  ├─ build_installer.ps1         # Windows installer (Inno Setup)
│  ├─ build_macos_vst3.sh         # macOS VST3 build
│  ├─ build_macos_au.sh           # macOS AU build
│  ├─ build_macos_pkg.sh          # macOS .pkg installer
│  ├─ build_macos.sh              # macOS universal build
│  └─ ... (install, symlink, release helpers)
├─ test/                          # Unit tests (Catch2)
│  ├─ Main.cpp
│  └─ dsp/                        # Test suites per module
├─ docs/                        # Documentation
│  ├─ releases/                   # Release notes (latest.json, v0.1.1.md)
│  ├─ architecture.md
│  ├─ default-parameters.md
│  └─ ...
├─ installer/                     # Windows installer assets
│  └─ OpenVoxTuner.iss            # Inno Setup script
├─ .github/                       # CI/CD and issue templates
│  ├─ workflows/                  # GitHub Actions (CI, release)
│  └─ ISSUE_TEMPLATE/             # Bug report / feature request
├─ assets/                        # Binary resources
│  └─ icon.png
├─ external/ARA_SDK/              # Celemony ARA SDK (v2.2, submodule)
├─ CMakeLists.txt
├─ README.md
├─ LICENSE
├─ docs/implementation-roadmap.md
├─ .gitignore
├─ .gitattributes
└─ .gitmodules

Licensing

OpenVoxTuner is free for everyone under the AGPLv3 license — musicians, producers, studios, educators. No restrictions on commercial use.

Third-party licenses

Library License Compatibility
JUCE 8 AGPLv3 Same license
ARA SDK Apache 2.0 Fully compatible
PreSonus Extensions Public Domain Fully compatible
Catch2 (tests) Boost (BSL-1.0) Fully compatible

All third-party licenses are compatible with AGPLv3.

What AGPLv3 means for you

You are... Can you use it for free? Any obligation?
Musician / Producer Yes None — just make music
Studio (mixing, mastering, production) Yes None — you're using the plugin as a tool
Educator / Student Yes None
Developer (modifying & redistributing) Yes You must share your modified source under AGPLv3
Company (forking into a closed-source product) No You need a commercial license

In practice, if you use OpenVoxTuner to make music — even professionally — the AGPLv3 license is completely free with no obligations.

Support the project

OpenVoxTuner is free for everyone. If OpenVoxTuner saves you time or helps your music, consider supporting the project — even a small donation makes a huge difference.

Tier Platform Price Perks
Free — 0$ Full plugin, all features
Buy me a coffee Ko-fi One-time A quick thank-you ❤️
Sponsor GitHub Sponsors Monthly Support ongoing development
Supporter Patreon Coming soon Private Discord + vote on upcoming features
Gold Patreon Coming soon All Supporter perks + early access / beta builds + name in credits

Every contribution helps keep the project alive and free for everyone.

Developer license

A commercial license is available for developers or companies who want to integrate OpenVoxTuner into a closed-source product without the AGPLv3 copyleft obligation.

What it grants:

  • Permission to use OpenVoxTuner's DSP, UI components, and algorithms in proprietary software
  • No copyleft obligations — you are not required to publish your source code
  • No requirement to release derivative works under AGPLv3

What it includes:

  • Priority email support
  • Optional custom features and DSP consulting
  • Perpetual license for the version purchased (updates subject to tier)

Contact: open an issue on GitHub.

Contributing

Contributions are welcome! You can help by:

  • Fixing bugs
  • Improving DSP algorithms
  • Adding language translations
  • Enhancing the UI
  • Writing documentation
  • Testing DAW compatibility

See CONTRIBUTING.md for details.

AI-Generated Code Review

Some parts of OpenVoxTuner are written with the assistance of AI coding agents, always under human supervision. All code is reviewed before merging, and community pull requests are highly encouraged to audit, improve, or replace AI-assisted sections.

Build

Windows (Visual Studio)

Prerequisites:

  • Visual Studio 2022
  • CMake >= 3.22
  • JUCE 8 (default path in CMake is C:/JUCE)
  • Git LFS (for binary resources)
# Debug build
.\scripts\build.ps1 -Configuration Debug

# Release build
.\scripts\build.ps1 -Configuration Release

# Build Windows installer (requires Inno Setup)
.\scripts\build_installer.ps1

macOS (VST3 / AU / pkg)

Prerequisites:

xcode-select --install
brew install cmake ninja

Build VST3:

./scripts/build_macos_vst3.sh --juce-path ~/dev/JUCE --install

Build AU:

./scripts/build_macos_au.sh --juce-path ~/dev/JUCE --install

Build macOS .pkg installer. The official releases ship a signed & notarized installer with VST3 + AU + Standalone:

./scripts/build_macos_pkg.sh --juce-path ~/dev/JUCE --formats VST3,AU,STANDALONE

To build a smaller installer without the AU, override --formats (e.g. VST3,STANDALONE).

Detailed build guides:

Formats

Format Windows macOS
VST3 ✅ ✅
AU — ✅
Standalone ✅ ✅
ARA2 ✅ ✅

Documentation

License

See LICENSE.

Issue Reporting

Use GitHub issue templates:

Star History

Star History Chart

About

Vocal Tuner audio plugin with harmonies, curve editor and MIDI output (ARA2 support)

Topics

Resources

Contributing

Security policy

Stars

5 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages