Rescript.

Regenerate

Change what was said, without re-recording

…and it shipped in March of last yearApril of last year.

Regenerate
April of last year
≈2.4s into a 2.9s slotSpeaker 2 · voice ready
English · FasterGenerate

Rescript can respeak a line. Select the words you got wrong, type what you meant, and it generates new audio in that speaker's own voice — cloned on your machine from about ten seconds of their clean audio already in the recording. No training session, no voice profile on a server, and it works for any speaker in the file. Six languages.

Rewrite a line and have it spoken
Yes — cloned from that speaker's own audio, on-device
Where your media goes
Nowhere. It never leaves your device
Works offline
Yes, once the model has downloaded a first time
Price
Free and open source for noncommercial use
Source code
Public on GitHub — auditable
Speaker detection
Local diarization, speakers renameable

Step by step

How it works, start to finish.

  1. 01

    Select the line

    Highlight the words you want to change in the transcript. The selection has to be one speaker's continuous speech and can't span a cut — Rescript tells you which rule you've hit and why.

  2. 02

    Type the correction

    Rewrite the line however you want. A fit meter shows the estimated length against the slot available before you generate, so a rewrite that can't fit is caught while you're still typing rather than after you wait for it.

  3. 03

    Generate

    The first time you regenerate for a speaker, Rescript clones their voice from clean audio it picks out of the recording — avoiding stretches with fillers or crosstalk, because a reference sample's flaws come back in every generated line. The voice is then cached for the rest of the session.

  4. 04

    Keep editing

    The new audio drops into place and playback continues as normal. Delete words around it, cut elsewhere, and export as usual — a regenerated line behaves like any other part of the timeline.

Fitted to the slot, not bolted on

Every timestamp in Rescript is an offset into the original media, and an export is a pure subsequence of it. Generated audio only fits that model if it occupies exactly the span it replaces, so that's the rule the feature is built around.

It gets there cheapest-first: grow the span into adjacent silence where there's room, pad with real silence if the line comes up short, and time-compress only as a last resort. Past about 1.5× it refuses outright and tells you to shorten the line or select more words, because faster than that is audibly wrong.

The voice comes from the recording itself

Cloud voice cloning usually means recording and submitting a training set that then lives on the vendor's servers. That's a poor fit for the real problem — the person who fumbled a line is often a guest, and they've gone home.

Rescript clones from the recording you already have, looking for about ten seconds of that speaker's cleanest continuous audio and skipping runs that are mostly filler or have someone talking over the top. Four seconds is the minimum; below that it refuses rather than produce something that sounds like a different person.

What it runs on

Speech synthesis uses Pocket TTS, an open model exported to ONNX, running in a Web Worker on your own hardware. A language's voice bundle downloads once — roughly 140 MB for the faster models, 360 MB for the deeper ones — then it's cached like Whisper.

The fast tier generates quicker than realtime on most machines and is the default wherever it exists. The deeper tier has noticeably better prosody and is noticeably slower; where both exist for a language you can pick per line.

Use it honestly

This is a tool for fixing your own recordings: a misspoken figure, a wrong name, a sentence you mangled on take four and didn't catch until the edit. It exists so that a small mistake doesn't cost a re-record.

It is not a tool for putting words in someone's mouth. Cloning a voice to make a person appear to say something they didn't is deceptive at best and illegal in a growing number of places. Consent to be recorded is not consent to be synthesized — ask, and disclose synthetic speech where it could be mistaken for real.

Read the Acceptable Use Policy

FAQ

Questions people actually ask

Can I change what someone says in a video?

In your own recordings, yes — Rescript regenerates a selected line in that speaker's cloned voice and fits it into the space the original occupied. It's meant for correcting mistakes in material you have the right to edit, with the consent of the people in it.

Does the voice cloning need a training session?

No. Rescript clones from roughly ten seconds of clean audio already in the recording. It needs at least four seconds of that speaker's clean speech and will refuse below that rather than produce a voice that doesn't sound like them.

Is my voice uploaded anywhere?

No. The voice model runs on your device, the reference audio never leaves it, and no voice profile is created or stored on any server. The only download is the one-time model bundle.

Which languages can it speak?

English, Spanish, French, German, Italian, and Portuguese. If the transcript is in a language with no voice model, Rescript refuses rather than regenerating in the wrong one.

What if my rewrite is longer than the original line?

A fit meter shows the estimate against the available slot before you generate. Rescript first grows the span into adjacent silence, then time-compresses slightly if it must, warning you past about 1.15× and refusing past 1.5×. Selecting more words gives it more room to work with.

Is it free?

Yes, for noncommercial use, like the rest of the app. There's no credit system and no per-generation charge, because the synthesis runs on your hardware.

Open it and see.

Free, open source, and running entirely on your own machine. No account, no upload, no watermark.

Or open the web app