Skip to content

Repository files navigation

RVC Voicechanger Logo

RVC Voicechanger

Electron FastAPI Next.js PyTorch License

A premium, real-time AI voice changer desktop application powered by Retrieval-based Voice Conversion (RVC) and Pedalboard DSP.
Experience near-zero latency conversion, automated image scraping for models, and customizable preset controls in a beautiful glassmorphic dark-mode interface.


🌟 Key Features

  • Real-time AI Voice Conversion: Highly optimized local RVC pipeline utilizing PyTorch, ONNX, and torchfcpe for pitch extraction.
  • Integrated DSP Pedalboard: Embedded real-time noise gate, highpass filter, compressor, pitch shifter, and reverb powered by Spotify's pedalboard library.
  • Multi-Language Settings (i18n): Native support for English, 日本語 (Japanese), and 简体中文 (Chinese) covering the entire app layout and telemetry panels.
  • Light & Dark Themes: Elegant theme toggle with polished, accessible layouts optimized for both dark glassmorphism and high-contrast light modes.
  • Automatic Web Image Scraper: Automatically scans .pth and .index model names to scrape, cache, and display high-quality model avatars from DuckDuckGo and Wikipedia.
  • One-Click RVC Import: Seamlessly import custom Applio voice models via a drag-and-drop local import interface.
  • Compact Model Manager: Star your favorite models or delete custom presets directly from the grid.
  • Clean Mode Bypass: Select the Original voice to bypass the DSP chain entirely and route your clean microphone audio directly.
  • Low Latency & High Performance: Tailored multi-threaded pipeline with macOS OpenMP conflict mitigation for smooth performance on Apple Silicon.

📸 Screenshots

Voicebox Dashboard VoiceLab Tuning

Soundboard Trigger Settings Configuration


🏗️ Architecture & Workflow

The application runs a hybrid desktop architecture: a modern React frontend hosted locally by a Python FastAPI server, all orchestrated within an Electron shell.

graph TD
    A[Electron Shell] <-->|IPC Bridge| B[Next.js Renderer UI]
    A -->|Spawns / Manages| C[FastAPI Python Backend]
    B <-->|REST / WebSockets| C
    C -->|Audio Streaming| D[Sounddevice Input/Output]
    C -->|AI Inference| E[RVC Inference Pipeline]
    C -->|Audio Effects| F[Spotify Pedalboard DSP]
    C -->|Model Manager| G[Web Image Scraper & Disk Cacher]
Loading

🛠️ Technology Stack

  • Frontend Shell: Electron, JavaScript
  • User Interface: React, Next.js, Tailwind CSS, Lucide Icons, Shadcn UI
  • Backend Server: FastAPI, Uvicorn, WebSockets
  • Audio Engine: PySoundDevice, Spotify Pedalboard, PyTorch, FAISS, Librosa

🚀 Getting Started

Prerequisites

  • Node.js: v18.x or later (pnpm recommended)
  • Python: v3.10 to v3.12 (with pip and venv)

Installation

  1. Clone the Repository:

    git clone https://github.com/satiricalguru/RVC-Voicechanger.git
    cd rvc-voicechanger
  2. Set Up the Python Virtual Environment:

    python3 -m venv .venv
    source .venv/bin/activate
    pip install -r requirements.txt
  3. Install Frontend Dependencies:

    cd ui
    pnpm install
    cd ..
  4. Install Electron Shell Dependencies:

    pnpm install

Running the Application

  • Development Mode:

    npm run dev

    This launches the FastAPI backend locally, boots the hot-reloaded Next.js client, and opens the Electron desktop window.

  • Production Build & Start:

    npm start

Packaging the Application

Compile the app bundle into a standalone executable (e.g., .dmg on macOS, .exe on Windows):

npm run build

🍎 macOS Gatekeeper Bypass

Since these builds are unsigned, macOS Gatekeeper will block first-launch execution and may display a warning that the app is "damaged and cannot be opened".

To bypass this and run the app:

  1. Drag RVC Voicechanger.app from the .dmg into your Applications folder.
  2. Open your terminal and execute:
    xattr -d com.apple.quarantine /Applications/RVC\ Voicechanger.app
  3. Launch the application normally from Finder or your Application list.

📂 Folder Structure

.
├── app/                  # FastAPI Backend API
│   ├── backend/          # Models Manager, Engine, and RVC Pipeline
│   └── frontend/         # Static compiled Next.js bundle
├── assets/               # Branding assets & application icons
├── electron/             # Main process & IPC handler definitions
├── ui/                   # Next.js / Tailwind React components
├── models/               # RVC Models folder
│   ├── default/          # Native pre-installed RVC checkpoints
│   ├── custom/           # User imported .pth / .index files
│   └── images/           # Cached scraped web avatars
├── requirements.txt      # Python dependencies
└── package.json          # Node scripts and Electron configuration

👥 Contributors & Acknowledgement

Contributors

  • Jatin Pandey (@satiricalguru) — Project lead, core developer, and UI designer.

Acknowledgement

  • This project builds on top of and acknowledges the outstanding open-source work of IAHispano/Applio which provided the foundation for RVC voice inference structures and configurations.
Applio Contributors

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Real-time AI voice changer desktop application powered by Retrieval-based Voice Conversion (RVC) and Spotify Pedalboard DSP.

Topics

Resources

Stars

6 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages