RUNLOCALAIv38
->Will it run?Best GPUCompareTroubleshootStartLearnPulseModelsHardwareToolsBench
Run check
RUNLOCALAI

Independently operated catalog for local-AI hardware and software. Hand-written verdicts. Source-cited claims. Reproducible commands when we have them.

OP·Eruo Fredoline
DIR
  • Models
  • Hardware
  • Tools
  • Benchmarks
TOOLS
  • Will it run?
  • Compare hardware
  • Cost vs cloud
  • Choose my GPU
  • Prompting kits
  • Quick answers
REF
  • All buyer guides
  • Learn local AI
  • Methodology
  • Glossary
  • Errors KB
  • Trust
EDITOR
  • About
  • Author
  • How we make money
  • Editorial policy
  • Contact
LEGAL
  • Privacy
  • Terms
  • Sitemap
MAIL · MONTHLY DIGEST
Get monthly local AI changes
Monthly recap. No spam.
DISCLOSURE

Some links on this site are affiliate links (Amazon Associates and other first-class retailers). When you buy through them, we earn a small commission at no extra cost to you. Affiliate links do not influence our verdicts — there are cards we rate highly that we don't have affiliate relationships with, and cards that sell well that we refuse to recommend. Read more →

© 2026 runlocalai.coIndependently operated
RUNLOCALAI · v38
Glossary / Generative AI / Voice Cloning
Generative AI

Voice Cloning

Voice cloning is the process of generating synthetic speech that mimics a specific person's voice, including timbre, pitch, and speaking style. In local AI, operators use models like Coqui TTS or XTTS to clone a voice from a short audio sample (e.g., 5–30 seconds). The model extracts a speaker embedding from the sample and uses it to condition a text-to-speech (TTS) pipeline, enabling the generated speech to sound like the target speaker. Voice cloning typically runs on a GPU with at least 4 GB VRAM for real-time inference; larger models may require 8–16 GB. Quality depends on sample clarity, duration, and model architecture.

Deeper dive

Voice cloning models fall into two categories: speaker-adaptation and speaker-encoder. Speaker-adaptation fine-tunes a base TTS model on a few minutes of target speech, producing high fidelity but requiring more compute and data. Speaker-encoder models (e.g., XTTS, YourTTS) use a pre-trained encoder to extract a speaker embedding from a short sample, then feed that embedding into a TTS decoder. This approach requires no fine-tuning and works with as little as 3 seconds of audio, though quality degrades with very short or noisy samples. Modern local models like XTTS-v2 can run on consumer GPUs (6–8 GB VRAM) and produce near-real-time speech at ~2–3 seconds per 10 seconds of audio on an RTX 3060. Operators often pair voice cloning with a local TTS engine like Coqui AI or Piper TTS, and may use tools like RVC (Retrieval-based Voice Conversion) for singing voice cloning.

Practical example

An operator wants to clone a friend's voice for a D&D campaign. They record a 10-second sample of the friend speaking clearly. Using XTTS-v2 in Coqui AI, they load the model (requires ~6 GB VRAM) and run inference: tts_to_file(text="Hello adventurer", speaker_wav="friend.wav", language="en", file_path="output.wav"). The output is a 3-second WAV file that sounds like the friend. On an RTX 3060, generation takes ~1 second. If VRAM is tight, they can use a quantized version (e.g., 4-bit) to fit in 4 GB.

Workflow example

In LM Studio or Ollama, voice cloning is not directly supported; operators typically use dedicated tools. A common workflow: 1) Install Coqui AI TTS via pip. 2) Download a pre-trained XTTS-v2 model (tts --model_name tts_models/multilingual/multi-dataset/xtts_v2). 3) Provide a reference audio file and text. 4) Run inference from command line or Python. For real-time use, operators may use the Coqui TTS server or integrate with ElevenLabs API (cloud) but prefer local for privacy. On Apple Silicon, MLX-optimized versions of XTTS exist, offering ~2x speedup over PyTorch.

Reviewed by Eruo Fredoline. See our editorial policy.

Buyer guides
  • Best GPU for local AI →
  • Best laptop for local AI →
  • Best Mac for local AI →
When it doesn't work
  • CUDA out of memory →
  • Ollama running slowly →
  • ROCm not detected →