
OmniVoice-Studio
The open-source ElevenLabs alternative for local voice cloning, design, create, dubbing and dictation Desktop App
Install with your AI
Paste into Claude Code, Cursor, or any agent — it reads the repo and wires the tool into your project.
Install and set up OmniVoice-Studio (git-clone project) into my current project. Found on https://claudeers.com/omnivoice-studio Repo: https://github.com/debpalash/OmniVoice-Studio Homepage/docs: https://palash.dev/omnivoice Detected install method: git-clone → git clone https://github.com/debpalash/OmniVoice-Studio Category: uncategorized. Platforms: cli, api, desktop, web, mobile. Read the repo's README for exact setup and env vars, then install it and wire it into my project. Claudeers Health Verdict: active; community-verified: false. Confirm the source before running anything.
git clone https://github.com/debpalash/OmniVoice-Studio
// compatibility
| Platforms | cli, api, desktop, web, mobile |
|---|---|
| Operating systems | — |
| AI compatibility | claude |
| License | NOASSERTION |
| Pricing | open-source |
| Language | Python |
OmniVoice Studio
The open-source ElevenLabs alternative.
Real-time dictation, zero-shot voice cloning, and cinematic video dubbing — all on your desktop.
No accounts. No API keys. No cloud. Everything runs on your machine. Open-source, 646 languages.
Quickstart · Features · Why OVS · TTS Engines · ASR Engines · API · Sponsors · Donate · Contributing · Discord · 简体中文
Your voice is the most personal data you have. So why rent it back from a cloud? Every mainstream voice tool ships your audio to someone else's server and bills you monthly for the privilege. OmniVoice Studio flips that: clone, design, dub, and dictate on your own hardware — 646 languages, no meter running, nothing leaving your machine.
| 🔑 No API keys | 🙅 No accounts | ☁️ No cloud | 💳 No subscription |
|---|---|---|---|
| nothing to paste in | nothing to sign up for | your audio stays home | it's your computer |
[!WARNING] OmniVoice Studio is in active beta. Things may break between releases — for the latest features and fixes, clone the repo and run from source rather than the pre-built installers. Bug reports and PRs are very welcome: open an issue or join Discord.
Get setup help · Share your dubs · Vote on the roadmap · Early access to new engines
📸 See it in action
Studio Generate & clone in one workspace — a 3-second clip mirrors any voice, 646 languages, zero-shot. |
Voice Design Build new voices from scratch — gender, age, accent, pitch, emotion, dialect. |
Voice Gallery Browse ready-made archetype voices with language filters — or build your own library. |
Video Dubbing A real dub, end to end: 37 segments transcribed, translated to Bengali, re-voiced, and timed — ready to export as MP4. |
Settings → Engines The engine compatibility matrix — 14 TTS engines with per-engine GPU preflight, no silent CPU fallback. |
Settings → Models One-click model store — auto-detects your platform (CUDA / MPS / CPU) and recommends the right models. |
API Reference The full local REST API, embedded — every endpoint documented with copy-paste client snippets. |
What's New In-app changelog reader — see exactly what shipped in each release without leaving the app. |
✨ Features
The eight headliners — and twelve more waiting under the fold.
🎙️ Voice Cloning3-second clip → mirror any voice. |
🎨 Voice DesignGender, age, accent, pitch, speed, |
🎬 Video DubbingYouTube URL or file → transcribe → |
📖 Audiobook EditorImport text, EPUB, or PDF. Auto-chapter, |
🎭 StoriesMulti-voice editor. Assign voices |
⌨️ Dictation Widget⌘+⇧+Space from any app. |
🔐 100% LocalNo keys, no cloud, no accounts. |
🤖 MCP ServerUse OmniVoice from Claude, |
…and 12 more — isolation, diarization, batch, watermarking, diagnostics, and friends
- 🔊 Vocal Isolation — Demucs-powered: splits speech from music and keeps the background bed.
- 👥 Speaker Diarization — Pyannote + WhisperX auto-identify who said what.
- 📦 Batch Queue — drop 50 videos, walk away; per-job progress bars.
- 🛡️ AI Watermark — AudioSeal (Meta): invisible, survives compression.
- 🔬 Diagnostics — self-check suite, error journal, scrubbed diagnostic bundles.
- ⚡ GPU Auto-Detect — CUDA · MPS · ROCm (Linux, opt-in) · CPU; ≤8 GB VRAM auto-offloads.
- 🧭 Engine routing — preflight GPU check per engine; no silent CPU fallback.
- 🧩 Extensible — subclass
TTSBackend, add any engine in ~50 lines. - 🎒 Portable personas — export voices as
.ovsvoicebundles: identity + watermark. - ♾️ Unlimited TTS — sentence-chunked generation, no length cap, streaming via WebSocket.
- 🌐 Remote backend — point the UI at a remote server; Tailscale-friendly, bearer auth.
- 🧠 Dictation + LLM — local-LLM cleanup of transcripts, optional echo cancellation.
⚡ Quickstart
macOS: first launch needs a one-time approval — right-click → Open (or System Settings → Privacy & Security → "Open Anyway" on macOS 15). No Terminal needed. Why?
Intel Macs are not supported for the local backend: the app UI installs, but the Python backend cannot run because PyTorch no longer ships Intel-Mac (x86_64) wheels (#889) — see docs/install/macos.md.
Pick your OS and follow the guide end-to-end:
- 🍎 macOS — docs/install/macos.md
- 🪟 Windows — docs/install/windows.md
- 🐧 Linux — docs/install/linux.md
- 🐳 Docker — docs/install/docker.md · Docker Hub:
palashdeb/omnivoice-studio
Feels slow? docs/performance.md covers where generation time actually goes, the tuning knobs, and the three classic causes of "it got slow".
Coming from CorentinJ/Real-Time-Voice-Cloning (now archived)? There's a dedicated migration guide: docs/migration/real-time-voice-cloning.md.
🧰 Stuck? Self-checks, tokens & restricted networks
Run the built-in self-check first — Settings → About → "Run
self-check" in the app, or uv run python backend/main.py --diagnose from
a checkout (--deep also test-loads the active engine). Then see
docs/install/troubleshooting.md for the
top 10 install errors. The in-app error UI deeplinks to those entries when
something breaks at runtime, and Settings → About → "Save diagnostic
bundle" packages scrubbed logs + the self-check report for bug reports.
For Hugging Face token setup, see docs/setup/huggingface-token.md. For diarization-specific gating, see docs/features/diarization.md. For download speed, the ⚡ fast-download (Xet) status, and restricted-network / mirror options, see docs/downloading-models.md.
💡 Why OmniVoice?
ElevenLabs charges $5–$330/mo and processes your audio on their servers. OmniVoice Studio runs on your hardware, with no usage limits.
| ElevenLabs | OmniVoice Studio | |
|---|---|---|
| Pricing | $5–$330/mo, per-character billing | Free & open-source (AGPL-3.0) · Commercial license for proprietary use |
| Voice Cloning | ✅ 3s clip | ✅ 3s clip, zero-shot |
| Voice Design | ✅ Gender, age | ✅ Gender, age, accent, pitch, style, dialect |
| Audiobook / Stories | ❌ | ✅ Full audiobook editor + multi-voice stories (EPUB/PDF import, .m4b export) |
| Languages | 32 | 646 |
| Video Dubbing | ✅ Cloud-only | ✅ Fully local |
| Data Privacy | Audio sent to cloud | Nothing leaves your machine |
| API Keys | Required | Not needed |
| GPU Support | N/A (cloud) | CUDA · Apple Silicon · ROCm (Linux) · CPU |
| Desktop App | ❌ | ✅ macOS · Windows · Linux |
| TTS Engines | 1 | 14 (OmniVoice, CosyVoice 3, GPT-SoVITS, VoxCPM2, MOSS-TTS-Nano, KittenTTS, MLX-Audio, Sherpa-ONNX, IndexTTS 2, OmniVoice GGUF, Supertonic 3, MOSS-TTS-v1.5, dots.tts, Confucius4-TTS) |
| ASR Engines | 1 | 9 (WhisperX, Faster-Whisper, MLX Whisper, PyTorch Whisper, Parakeet, Moonshine, FunASR, isolated Faster-Whisper, sherpa-onnx live dictation) |
| MCP Server | ❌ | ✅ Use from Claude, Cursor, any MCP client |
| Self-check | ❌ | ✅ Diagnostics suite, error journal, scrubbed debug bundles |
| Customizable | ❌ Closed | ✅ Fork it, extend it, ship it |
Professional-grade voice AI, minus the subscription and the cloud.
Convinced? Come build with us.
🖥️ System Requirements
| Minimum | Recommended | |
|---|---|---|
| OS | Windows 10, macOS 12+ (Apple Silicon), Ubuntu 24.04+ (glibc 2.39+) | Any modern 64-bit OS |
| RAM | 8 GB | 16 GB+ |
| VRAM (GPU) | 4 GB (auto-offloads TTS to CPU) | 8 GB+ (NVIDIA RTX 3060+) |
| Disk | 10 GB free (models + cache) | 20 GB+ SSD |
| Python | 3.10+ (managed by uv) | 3.11–3.12 |
| GPU | Optional — CPU works | NVIDIA CUDA · Apple Silicon MPS · AMD ROCm (Linux only) |
[!TIP] On GPUs with ≤8 GB VRAM, OmniVoice automatically offloads TTS to CPU during transcription — no config needed. A dedicated GPU is not required; the entire pipeline runs on CPU (just slower).
[!NOTE] AMD GPUs: ROCm acceleration is Linux-only and opt-in — pick "AMD GPU (ROCm)" on the first-run setup screen or set
OMNIVOICE_TORCH_VARIANT=rocm(docs/install/linux.md). On Windows, AMD GPUs (incl. Ryzen AI iGPUs) run CPU-only: PyTorch has no Windows ROCm wheels, so Windows GPU acceleration is NVIDIA/CUDA-only (docs/install/windows.md).
[!IMPORTANT] macOS Intel (x86_64) is unsupported for the local backend: the app UI installs, but the Python backend cannot run because PyTorch no longer ships Intel-Mac wheels (#889). Intel-Mac users can still point the UI at a remote backend on another machine — see docs/install/macos.md.
🗣️ TTS Engines
14 engines, one picker. OmniVoice (default, 600+ languages) is always available; CosyVoice 3, GPT-SoVITS, VoxCPM2, MOSS-TTS-Nano, KittenTTS, MLX-Audio, and Sherpa-ONNX are opt-in and auto-detected — plus six lazy-installed heavyweights (IndexTTS 2, OmniVoice GGUF, Supertonic 3, MOSS-TTS-v1.5, dots.tts, Confucius4-TTS). Switch in Settings → TTS Engine or via the OMNIVOICE_TTS_BACKEND env var — the selection applies everywhere synthesis happens: single-clip generation, Voice Cloning, Video Dubbing, and Batch TTS.
📊 The full matrix — 14 engines × platform × clone/instruct × license
| Engine | Languages | Clone | Instruct | Linux | macOS ARM | Windows | License |
|---|---|---|---|---|---|---|---|
| OmniVoice (default) | 600+ | ✅ | ✅ | ✅ CUDA/CPU | ✅ MPS | ✅ CUDA/CPU | Built-in |
| CosyVoice 3 | 9 + 18 dialects | ✅ | ✅ | ✅ CUDA/CPU | ✅ MPS | ✅ CUDA/CPU | Apache-2.0 |
| GPT-SoVITS | 5 | ✅ | — | ✅ CUDA/CPU | — | ✅ CUDA/CPU | MIT |
| VoxCPM2 | 30 | ✅ | ✅ | ✅ CUDA/CPU | ✅ MPS | ✅ CUDA/CPU | Apache-2.0 |
| MOSS-TTS-Nano | 20 | ✅ | — | ✅ CUDA/CPU | ✅ CPU | ✅ CUDA/CPU | Apache-2.0 |
| KittenTTS | English | — | — | ✅ CPU | ✅ CPU | ✅ CPU | MIT |
| MLX-Audio (Kokoro, Qwen3-TTS, CSM, Dia, …) | Multi | Varies | Varies | ❌ | ✅ Native | ❌ | Varies |
| Sherpa-ONNX | 20+ | — | — | ✅ CUDA/CPU | ✅ CPU | ✅ CUDA/CPU | Apache-2.0 |
| IndexTTS 2 ⚡ | Multi | ✅ | — | ✅ CUDA | — | ✅ CUDA | Apache-2.0 |
| OmniVoice GGUF ⚡ | 600+ | ✅ | ✅ | ✅ CPU | ✅ CPU | ✅ CPU | Built-in |
| Supertonic 3 ⚡ | 31 | — | — | ✅ CPU | ✅ CPU | ✅ CPU | OpenRAIL-M |
| MOSS-TTS-v1.5 ⚡ (8B) | 31 | ✅ | — | ✅ CUDA/CPU | ✅ CPU | ✅ CUDA/CPU | Apache-2.0 |
| dots.tts ⚡ (2B) | 24 | ✅ | — | ✅ CUDA/CPU | ✅ CPU | ❌ | Apache-2.0 |
| Confucius4-TTS ⚡ | 14 | ✅ | — | ✅ CUDA/CPU | ✅ CPU | ✅ CUDA/CPU | Apache-2.0 |
CUDA = GPU-accelerated · MPS = Apple Silicon Metal · CPU = runs everywhere, slower for large models · KittenTTS and MOSS-TTS-Nano run realtime on CPU · MLX-Audio is Apple Silicon only · ⚡ = lazy-registered (installed on first use)
Clone matters beyond single-clip generation: Video Dubbing (and any Batch job with a pinned voice) needs reference-audio cloning to preserve speaker identity, so picking a Clone-less engine (KittenTTS, Sherpa-ONNX, Supertonic 3) as the active engine fails those jobs up front with an actionable message instead of silently falling back to OmniVoice.
MOSS-TTS-v1.5 (8B, ~16 GB weights) and dots.tts (2B, ~9 GB weights) are heavyweight opt-in engines that run in their own isolated venv from a local clone — see MOSS-TTS-v1.5 and dots.tts. Neither claims Apple-Silicon MPS (upstream is CUDA/CPU only; on a Mac they run on CPU). dots.tts upstream is Linux/macOS only — no Windows path. Confucius4-TTS (14-language cross-lingual zero-shot cloning) is similar — its own Python 3.10 venv from a clone; CUDA recommended, CPU validated end-to-end (slow, ~17× realtime; no MPS — tested slower than CPU); see Confucius4-TTS.
🎧 ASR Engines
10 engines — they power dictation, video dubbing, and subtitles. WhisperX is the cross-platform default (~100 languages, word-level timing); the rest are opt-in and auto-detected. Switch in Settings → Engines (the ASR Engines table — same picker TTS has), or pin one with the OMNIVOICE_ASR_BACKEND env var (the env var wins over the Settings pick). Nine run fully on-device; one (OpenAI-compatible) is an optional remote client for pointing at Qwen3-ASR or another compatible server — see below.
📊 The full lineup — 10 engines, what each is best at, and compute-type notes
| Engine | OMNIVOICE_ASR_BACKEND | Languages | Best for |
|---|---|---|---|
| WhisperX (default) | whisperx | ~100 | Dubbing & subtitles — word-level timing via wav2vec2 forced alignment |
| Faster-Whisper | faster-whisper | ~100 | Fast transcription on Linux / macOS / Windows (CTranslate2) |
| Faster-Whisper (isolated) | faster-whisper-isolated | ~100 | Same as Faster-Whisper but crash-isolated in a subprocess — an ASR crash won't take down the app |
| MLX Whisper | mlx-whisper | ~100 | Native Apple Silicon speed (Apple MLX / Metal) |
| PyTorch Whisper | pytorch-whisper | ~100 | CUDA / CPU fallback via 🤗 Transformers (no cuDNN 8 needed) |
| Parakeet TDT | nemo-parakeet | English + 25 EU | SOTA accuracy at ~10× realtime even on CPU, auto language detection (NVIDIA NeMo, CUDA/CPU) |
| Moonshine | moonshine | English | Edge / low-latency, ONNX |
| FunASR | funasr | 50+ | All-in-one multilingual — built-in VAD + inline speaker diarization (SenseVoice) |
| sherpa-onnx (live dictation) | sherpa-onnx-asr | 25 EU + 90+ | Live, faster-than-real-time dictation — small streaming/offline ONNX models (Parakeet TDT v3/v2, streaming Zipformer & Paraformer, Whisper Tiny), CPU, identical on macOS / Windows / Linux. Picked per-model in Settings → Voice. |
| OpenAI-compatible ⚠️ remote | openai-compat-asr | Server-dependent | A path to Qwen3-ASR today (self-hosted server, no transformers wait), any OpenAI-compatible transcription endpoint, or OpenAI's own API — no install, configure + test the connection in Settings → Engines (ASR tab). Audio leaves your machine to whatever server you point it at; see docs/engines/openai-compatible-asr.md. |
Whisper-family engines cover ~100 languages; FunASR / SenseVoice adds an all-in-one multilingual path with built-in voice-activity detection and inline speaker diarization. sherpa-onnx powers the live dictation model picker — you talk and text appears as you speak. Every engine runs on-device — no API keys, no cloud.
GPU without efficient float16? On older NVIDIA GPUs (Maxwell/Pascal, GTX 16xx) or after a CTranslate2/cuDNN mismatch, the CTranslate2 ASR engines (WhisperX, Faster-Whisper) can't run
float16and OmniVoice automatically retries onint8— no config needed. If transcription still fails, pin the compute type with theASR_COMPUTE_TYPEenv var (escape hatch):ASR_COMPUTE_TYPE=int8(orfloat32for CPU). Set it toint8and restart the backend.
🏗️ Architecture
┌─────────────────────────────────────────────────────────────┐
│ Frontend (React) │
│ DubTab · VoiceConsole · Stories · Audiobook · Gallery │
│ Dictation · BatchQueue · Diagnostics · MCP Client │
├─────────────────────────────────────────────────────────────┤
│ Backend (FastAPI) │
│ 100+ API endpoints · SSE+WSS streaming · SQLite │
├──────────┬──────────┬──────────┬──────────┬────────────────┤
│ WhisperX │ Demucs │OmniVoice │ Pyannote │ Engine Routing │
│ (+7 ASR │ Source │ (+10 │ Diariz- │ ↳ GPU preflight │
│ engines) │ Sep. │ TTS) │ ation │ ↳ No silent CPU │
└──────────┴──────────┴──────────┴──────────┴────────────────┘
CUDA / MPS / ROCm / CPU (auto-detected + routed)
🔌 OpenAI-compatible API
Already have a script, agent, or tool that speaks OpenAI's audio API? Point it at http://localhost:3900/v1 — no key needed, no code changes. The backend ships a drop-in surface for the audio endpoints, wired to whichever TTS/ASR engine you have active (and yes, voice accepts your cloned voice-profile IDs).
| Endpoint | What it does |
|---|---|
POST /v1/audio/speech | TTS — text in; mp3 / wav / flac / opus / pcm out. tts-1 / tts-1-hd map to your active engine; OpenAI voice names (alloy, …) are accepted. |
POST /v1/audio/transcriptions | STT — audio file in; json, text, verbose_json, srt, or vtt out. whisper-1 maps to your active ASR engine. |
GET /v1/audio/voices | OmniVoice extension — lists every voice profile and engine, so clients can discover your clones. |
curl http://localhost:3900/v1/audio/speech \
-H "Content-Type: application/json" \
-d '{"model": "tts-1", "voice": "alloy", "input": "Generated on my own hardware.", "response_format": "wav"}' \
--output speech.wav
from openai import OpenAI
client = OpenAI(base_url="http://localhost:3900/v1", api_key="none") # any string works — nothing checks it
result = client.audio.transcriptions.create(model="whisper-1", file=open("clip.wav", "rb"))
print(result.text)
Want the whole surface (100+ endpoints)? The full REST API reference is embedded in the app — Settings → OpenAPI Reference (Scalar-powered), or the {} button in the footer.
📓 Run on Google Colab (community)
No local GPU? A community member (@shakib30) maintains a working Colab notebook: shakib30/OmniVoice-Studio-google-colab. Community-maintained — issues with the notebook go there; issues with OmniVoice itself come here.
🤝 Agent Skills
Teach your AI agent (Claude Code, Cursor, Codex, …) to use OmniVoice with one command:
npx skills add debpalash/omnivoice-studio
Ships two skills: omnivoice — speak and transcribe through your local install (including your cloned voices) from any agent, free and offline; and oss-maintainer — the maintainer methodology this project is run with, for anyone running their own OSS project with an agent.
🗺️ Roadmap
🔜 Up Next
- 🎬 Lip-sync v2 — visual speech timing with wav2lip
- 🌐 Hosted Demo — try OmniVoice without installing anything
- 🔌 Plugin Marketplace — community-contributed TTS engines and effects
- 🎵 Real-time Voice Changer — live microphone transformation during calls
✅ Everything shipped so far — the receipts, by category
| Category | Features |
|---|---|
| Longform | Audiobook editor (text/EPUB/PDF → chaptered .m4b), Stories multi-voice editor, two-pass loudnorm mastering, crash-resume for interrupted renders, pronunciation control + SSML-lite prosody |
| Dubbing | Full pipeline (transcribe→translate→synthesize→mux), scene-aware splitting, lip-sync scoring, streaming TTS, per-speaker voice assignment, Smart Fit timing + second-pass QC, dedicated Dub home |
| Voice | Zero-shot cloning, voice design, A/B comparison, voice preview widget, gallery with favorites/tags, portable persona bundles (.ovsvoice), voice console workspace |
| Audio | Demucs vocal isolation, per-segment gain, selective track export, stem/SRT/VTT/MP3 export, unlimited-length TTS via sentence-chunked generation |
| Multi-Lang | Multi-language batch picker, batch dubbing queue with sequential GPU execution |
| Diarization | Pyannote ML diarization, auto speaker clone extraction, per-speaker voice assignment |
| ASR | 9 engines (WhisperX, Faster-Whisper, isolated Faster-Whisper, MLX Whisper, PyTorch Whisper, Parakeet TDT, Moonshine, FunASR/SenseVoice, sherpa-onnx live dictation), crash-isolated subprocess backend |
| TTS | 14 engines (OmniVoice, CosyVoice 3, GPT-SoVITS, VoxCPM2, MOSS-TTS-Nano, KittenTTS, MLX-Audio, Sherpa-ONNX, + lazy: IndexTTS 2, OmniVoice GGUF, Supertonic 3, MOSS-TTS-v1.5, dots.tts, Confucius4-TTS), engine routing with GPU preflight |
| Infra | Docker deployment, CUDA/MPS/ROCm auto-detect, cuDNN 8 compat, VRAM-aware model offloading, engine routing (no silent CPU fallback), diagnostics suite & error journal, restricted-network mirror support |
| AI Provenance | AudioSeal invisible watermarking (SynthID-like), video logo overlay, watermark detection API |
| UX | Undo/redo, keyboard shortcuts, drag-and-drop, session persistence, glassmorphism design system, UI scale fix for Linux/WebKitGTK |
| Real-time Events | WebSocket event bus — instant sidebar refresh on data mutations, exponential backoff reconnect |
| State Management | Zustand store migration — uiSlice, pillSlice, dubSlice, generateSlice, prefsSlice, glossarySlice |
| Desktop | Cross-platform Tauri installers (macOS DMG — Apple Silicon; Intel unsupported for the local backend, #889 — Windows MSI, Linux deb/AppImage), auto-update infrastructure, single-instance enforcement, close-to-tray, macOS Gatekeeper fix |
| Dictation | Global system-wide hotkey (⌘+⇧+Space), frameless floating widget, streaming ASR via WebSocket, auto-paste, customizable hotkey, local-LLM transcript refinement |
| Batch Pipeline | Full batch TTS: extract → transcribe → translate → generate → mix → export, with live progress tracking |
| MCP Server | OmniVoice as a local TTS/STT provider for Claude, Cursor, and any MCP client |
| Remote Backend | Point the desktop UI at a remote backend URL with bearer auth (Tailscale-documented) |
| Reliability | Stall watchdog on bootstrap splash, per-engine GPU compatibility matrix, actionable errors for non-executable engine binaries, setuptools auto-repair |
💜 Sponsor / Donate
OmniVoice Studio is built by one developer using Claude Code and AI agents — and the agent bills are real. Over the last three months I've spent thousands of dollars on Claude subscriptions to keep the features shipping, the bugs fixed, and your issues answered. If OmniVoice has created value for you, helping cover those bills means I can keep developing full-time.
This month's agent bill fund
Every dollar goes directly to agent bills — keeping OmniVoice development continuous.
🌟 Sponsors
OmniVoice is free and AGPL-3.0 — no paid tier, no SaaS revenue. Sponsors keep development going, and in return get a logo slot here, in the app, and (for top tiers) on the project website. It's a thank-you, never a paywall. See tiers & become a sponsor →
Your logo here — become a sponsor
💡 GitHub also shows a Sponsor button at the top of this repo, wired to the same links via .github/FUNDING.yml.
💬 Community
We respond to setup questions within hours, not days.
What happens in there
| Channel | What happens there |
|---|---|
#announcements | Release news and the big moments — new versions land here first |
#releases + #changelog | Every build and exactly what's inside it |
#issues | Bug reports as forum posts — triaged straight into GitHub issues |
#ideas | Feature requests, discussed and voted on |
#discuss-ideas | Design talk before things get built |
#general | Setup help, GPU troubleshooting, and showing off your dubs |
🤝 Contributing
Yes please — bug fixes, new TTS engine adapters, UI improvements, docs, translations. All of it.
- 📖 Read the Contributing Guide for setup, code style, and PR workflow
- 🐛 Browse good first issues
- 💬 Join our Discord to discuss ideas or ask for help
❓ FAQ
Is this really as good as ElevenLabs?
Honest answer: it depends on what you're doing.
Where OmniVoice is genuinely competitive: voice cloning from a clean reference clip (state-of-the-art open diffusion TTS), language coverage (646 languages vs. their 32), and everything structural — no per-character billing, no usage caps, no audio leaving your machine, full pipeline customizability (10 TTS engines, 10 ASR engines, your choice of translation).
Where ElevenLabs still wins: out-of-the-box consistency and polish, especially for English TTS. Their one model is heavily tuned; our quality depends on which engine you pick, your hardware, and — for cloning — the reference audio (a dry, close-mic clip clones dramatically better than a noisy or echoey one).
For dubbing specifically: a dub is a chain — transcription → translation → cloning → synthesis — and the output is only as good as its weakest link on your source material. Noisy or accented source audio degrades transcription, which degrades everything downstream; some language pairs translate better than others. If parts of a dub come out incoherent, check the segment table's original text first: if the transcription is already wrong there, switch the ASR engine (Settings → Engines) or use cleaner source audio — that's usually the fix, not the voice.
Try it on your real material — it's free and takes one download. Many users find it replaces ElevenLabs outright; some keep both for different jobs. Both outcomes are fine with us.
Does it work on Apple Silicon (M1/M2/M3/M4)?
Yes. MPS acceleration is auto-detected. MLX-optimized Whisper models are available for faster transcription on Apple hardware. Intel Macs are not supported: the app UI installs, but the local Python backend cannot run because PyTorch no longer ships Intel-Mac wheels (#889) — an Intel Mac can only be used with a remote backend.
How much VRAM do I need?
4 GB minimum. With ≤8 GB, the TTS model is automatically offloaded to CPU during transcription. With 8+ GB, everything runs on GPU simultaneously. No GPU at all? CPU mode works — just slower (~3× for TTS).
Can I use this commercially?
Yes — commercial use is free. OmniVoice Studio is free and open-source under the GNU AGPL-3.0. So personal, educational, research, and commercial / business use are all free: run it, sell the audio you make with it, dub your own or a client's videos, deploy it across your team. Because AGPL is a network copyleft license, if you modify OmniVoice Studio and make that modified version available to others over a network, you must offer those users the source of your modified version under the same AGPL terms. Want to embed OmniVoice in a closed-source or proprietary product without those obligations? A commercial license is available — see License.
What languages are supported?
646 languages for TTS via the OmniVoice model. Transcription (WhisperX) supports 99 languages. Translation coverage depends on the target language pair.
Can I add my own TTS engine?
Yes. OmniVoice uses a built-in backend registry. To add an engine in ~50 lines, subclass
TTSBackend in backend/services/tts_backend.py and add it to the _REGISTRY dictionary. Fourteen engines are built in: OmniVoice, CosyVoice 3, GPT-SoVITS, MLX-Audio (14+ sub-engines), VoxCPM2, MOSS-TTS-Nano, KittenTTS, Sherpa-ONNX, plus lazy-registered IndexTTS 2, OmniVoice GGUF, Supertonic 3, MOSS-TTS-v1.5, dots.tts, and Confucius4-TTS. See the TTS Engines section for details.
Does OmniVoice collect any data about me?
Not unless you switch it on. Out of the box OmniVoice sends nothing — no analytics, no telemetry, no accounts, no phone-home. Your text, your audio, your voices, and your projects never leave your machine, and that is true whatever you choose here.
There is one opt-in toggle in Settings → Privacy → "Help improve OmniVoice", which is off by default. If you turn it on, the app sends anonymous usage stats: which engine and language you used, how long a generation took, how many characters the text had (a number, not the text), and the type of any error. It never sends the text you type, your audio, your file names, your voice names, or anything identifying you — enforced in code by a property allowlist, not just a promise (backend/core/analytics.py). Crash tracebacks are deliberately not auto-captured, because they can contain file paths and tokens. You can turn it off again at any time.
Builds from source have no analytics destination at all — the toggle isn't even shown, and nothing can be sent.
Want to see your own numbers instead? Settings → Usage shows them, computed entirely on your machine and sent nowhere.
How do I uninstall it / remove all its data?
OmniVoice is fully local — uninstalling is just deleting the app plus the folders it wrote (model cache, Python env, your voices/projects, config). Run
scripts/uninstall.sh (macOS/Linux) or scripts\uninstall.ps1 (Windows) — it prints every folder with its size as a dry-run first, then deletes on --yes. The full per-platform path list and app-removal steps are in docs/install/uninstall.md.
📜 License
OmniVoice Studio is free and open-source software under the GNU Affero General Public License v3.0 (AGPL-3.0).
Free for any use — including commercial and internal business use. Run it, sell the audio you produce with it, dub your own or clients' videos, roll it out across your team — all free, no license needed. As a network copyleft license, AGPL adds one obligation: if you modify OmniVoice Studio and offer that modified version to others over a network, you must make the complete corresponding source of your modified version available to them under the same AGPL-3.0 terms.
A commercial license is available for organizations that want to embed OmniVoice Studio in a closed-source or proprietary product or service without the AGPL-3.0 copyleft obligations. Pricing tiers coming soon. Inquiries: [email protected].
The bundled omnivoice/ TTS model by Han Zhu remains Apache-2.0 upstream. See LICENSE for the full, binding terms.
🙏 Acknowledgments
OmniVoice Studio is built on the shoulders of exceptional open-source work:
| Project | Role |
|---|---|
| OmniVoice (k2-fsa) | Zero-shot diffusion TTS engine — the core voice synthesis model |
| WhisperX | Word-level speech recognition and alignment |
| Demucs (Meta) | Music source separation for vocal isolation |
| Pyannote | Speaker diarization — who said what |
| CTranslate2 | Optimized Transformer inference on CPU and GPU |
| AudioSeal (Meta) | Invisible neural audio watermarking for AI provenance |
| Tauri | Native desktop app framework |
| Supertone / Supertonic 3 | ONNX TTS engine — 31 languages, CPU-efficient |
| Sherpa-ONNX | WASM-ready universal TTS/ASR runtime |
| GPT-SoVITS | Zero-shot TTS engine — 5 languages, RTF 0.014 |
🧰 More local open-source from the maker
Like the local-first philosophy? It runs in the family:
| Project | What it is |
|---|---|
| Opal 💠 | Play everything. The evolved media player for the next decades of entertainment — video, anime, comics, torrents, Jellyfin/Plex, with local AI built in. |
| memxt 🧠 | The fastest benchmarked open-source AI memory system. 100% local memory for AI agents, with MCP support. |
If you read this far, you're our kind of person.
⭐ Star this repo so others can find it too.
💬 Join the Discord to share what you build.
❤️ Support development — fund the AI agent bills that keep OmniVoice shipping.
// faq
What is OmniVoice-Studio?
The open-source ElevenLabs alternative for local voice cloning, design, create, dubbing and dictation Desktop App. It is open-source on GitHub.
Is OmniVoice-Studio free to use?
OmniVoice-Studio is open-source under the NOASSERTION license, so it is free to use.
What category does OmniVoice-Studio belong to?
OmniVoice-Studio is listed under uncategorized in the Claudeers registry of Claude-compatible tools.
// embed badge
[](https://claudeers.com/omnivoice-studio)
// retro hit counter
[](https://claudeers.com/omnivoice-studio)
// reviews
// guestbook
// related in Uncategorized / Others
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
The agent engineering platform.
FULL Augment Code, Claude Code, Cluely, CodeBuddy, Comet, Cursor, Devin AI, Junie, Kiro, Leap.new, Lovable, Manus, NotionAI, Orchids.app, Perplexity, Poke, Q…
100+ AI Agent & RAG apps you can actually run — clone, customize, ship.