ElevenLabs (TTS)¶
Premium neural text-to-speech. Used by the Generate Voice, Dubbing, and Live Translation pages when you pick ElevenLabs as the TTS method.
Get an API key¶
- Sign up at https://elevenlabs.io
- Open https://elevenlabs.io/app/settings/api-keys
- Click + Create New Key, name it (e.g. "ai-translate"), copy the key
(looks like
sk_...)
The free tier gives you ~10,000 characters / month, enough to test. Production usage starts around $5/month.
Configure in the app¶
In Settings → Service:
- Paste the key into ElevenLabs API key → Save
- Enter your preferred Voice ID in Voice ID (find IDs at https://elevenlabs.io/app/voice-lab; copy the ID from a voice's URL). Leave blank for ElevenLabs to pick a default.
In Settings → Voice:
- Set TTS method to ElevenLabs
-
Pick the ElevenLabs model:
Model Best for eleven_multilingual_v2(default)General use, balanced latency/quality eleven_v3Highest quality (use for production dubs) eleven_flash_v2_5Lowest latency (use for Live Translation)
What it powers¶
| Page | Use ElevenLabs when |
|---|---|
| Generate Voice | You want premium-quality voiceovers from subtitle files |
| Dubbing | You want a high-quality dub track on a translated video |
| Live Translation | You want spoken playback of translated captions in real time |
Voice cloning¶
ElevenLabs supports custom voice cloning (paid plan). Once you've cloned a voice on the ElevenLabs site, paste its Voice ID into Settings → Service → Voice ID and the dubbing / voice-generation pipeline will use it.
Caveats¶
Pre-flight check
The Voice / Dubbing pages check that your ElevenLabs API key is set before starting work. If it's missing you'll get a friendly dialog pointing you to Settings, not a half-run task.
Live mode falls back automatically
On the Live Translation page, if you've selected ElevenLabs but haven't configured a key, the app falls back to Edge TTS (free) and announces the fallback in the status label so you can fix it when convenient.
FFmpeg still required
ElevenLabs returns audio bytes; the app still uses FFmpeg to convert between formats and to combine timed clips into one file. See FFmpeg setup.
Common errors¶
| Error | Likely cause |
|---|---|
AUTH_ERROR |
Wrong / expired API key. Re-paste in Settings → Service. |
QUOTA_ERROR |
Free-tier character limit hit, or paid plan exhausted. |
MODEL_NOT_FOUND |
The selected ElevenLabs model is no longer available; pick another in Settings → Voice. |