← All posts
· 4 min read

Introducing Voice-Over Studio: Re-voice Any Audio for $0.06

Upload audio, edit the transcript, pick a voice per speaker, download. 16× cheaper than ElevenLabs dubbing.

ttsaiaudiodeveloper-tools

ElevenLabs charges $1.00+ to re-voice a 5-minute audio clip.

We built a better workflow for $0.06.

What is Voice-Over Studio?

Upload any audio. We transcribe it, detect every speaker, and let you assign a different voice to each one. Then we re-generate the whole thing with our TTS models.

Change the host's voice. Replace the guest. Edit the script. Remove filler words. One workflow, four steps.

How it works

1. Upload your audio

Drop an mp3, wav, m4a, or any common format. We transcribe it automatically using Whisper V3 with speaker diarization — each speaker gets their own labeled track.

2. Edit the transcript

Fix typos, rewrite lines, remove filler words ("um", "uh", "you know"). Each segment is a plain text field — edit anything. The original audio stays playable for reference.

3. Pick a voice for each speaker

Browse 238+ curated voices by category: podcast hosts, narrators, gaming characters, meditation guides, news anchors, kids. Preview any voice before selecting. Name your speakers — "Host", "Guest", "Reporter" — whatever helps.

4. Generate and download

We chain our transcription and dialogue APIs behind the scenes. Every segment gets generated with the assigned voice, then stitched together. One audio file, ready to download.

The economics

Provider5-min audio re-voicingMulti-speaker
ElevenLabs Dubbing~$1.00
LeanVox Voice-Over~$0.06

That's 16× cheaper. Your $1.00 signup credit covers your first 15+ voice-over sessions.

Breakdown for a 5-minute podcast:

  • Transcription: $0.002/min × 5 min = $0.01
  • TTS generation (Pro): $0.01/1K chars × ~5,000 chars = $0.05
  • Total: ~$0.06

Via API

The same workflow is available programmatically — chain POST /v1/audio/transcribe into POST /v1/tts/dialogue:

from leanvox import Leanvox

client = Leanvox(api_key="lv_live_...")

# Step 1: Transcribe + detect speakers
transcript = client.audio.transcribe(
    file="podcast.mp3",
    features=["transcribe", "diarize"]
)

# Step 2: Assign voices and re-generate
segments = [
    {
        "speaker": "host",
        "text": seg.text,
        "voice": "podcast_casual_host_m"
    }
    for seg in transcript.segments
    if seg.speaker == "SPEAKER_0"
]

result = client.tts.dialogue(segments=segments, model="pro")

Who is this for?

  • Podcast producers — swap a guest voice, fix a bad recording session
  • Content creators — A/B test different host voices
  • Localization teams — re-voice content for different markets
  • Accessibility — convert any audio to a clearer, more articulate voice
  • Developers — automate voice-over pipelines via API

Try it

Open Voice-Over Studio — it's live in your dashboard right now. No new account, no separate billing. Your existing API key and credits work.

Get your API key · Docs


Try LeanVox free

$0.50 in free credits. No credit card required. Start generating speech in 30 seconds.

Get started free →