The narrator is not a voice actor and not a recording. It is a voice Tembr cloned from ninety seconds of speech, rendered on the same machine that built the film.
What "local" means here: recording, cloning and rendering all run on your own GPU. The studio has no account, no telemetry and no API keys anywhere in it. The optional message-drafting helper is the only part that leaves the machine, and it borrows a CLI you already have signed in rather than holding a key of its own.
At a glance
What is Tembr?
Tembr is a local voice cloning studio for outreach. It clones a voice from ninety seconds of speech on your own GPU, speaks any text in it, renders a personal voice note for every lead on a list, and builds each lead a branded player page you can host anywhere. No cloud service, no account, and no API keys.
The Problem
What was broken.
Cold outreach has a sound, and everyone has learned to ignore it. The fifth email lands like the first four, unread and unheard, because nothing about it proves a person was ever involved.
The obvious fix, a real voice, runs straight into a harder problem. Every cloud voice service asks you to upload the one piece of data you can never rotate, revoke or change. A leaked password is an afternoon of work. A leaked voice is permanent, and it is increasingly the thing that authorises a bank transfer or convinces a colleague.
The Approach
What was built.
Tembr puts the entire pipeline on one machine. A ninety second reference recording is cloned by a local model on the user's own GPU; text is spoken in that voice by the same machine; a lead list becomes one personal note per lead; and every note is packaged into a branded static page the sender hosts themselves. Nothing about the voice is uploaded at any stage, because there is nowhere to upload it to.
The privacy claim is architectural rather than promised. There is no account system, no telemetry and no key storage anywhere in the codebase, which is a checkable statement now the repository is public. The one feature that does reach outside, an optional helper that drafts the outreach message, shells out to a CLI the user is already signed in to, so Tembr never holds a credential of its own.
The whole system
Five moves, all of them local.
Record
Ninety seconds, read once
A guided script covers the full range of the language in one continuous read. The studio measures the take as it arrives and says, in plain language rather than numbers, whether the microphone or the room is holding it back.
Clone
The take becomes a voice
A local model learns the timbre. Voices get quality badges, favourites and collections, and an opt-in cleanup that always derives a second voice rather than overwriting the first, because denoising a reference changes the delivery as well as the noise.
Generate
Type anything, hear yourself say it
Every clip names itself from its own first words, can be starred and filtered by project, and downloads under a readable filename. Each render is one model pass, because a text split across passes comes back with a different energy halfway through.
Reach
One message, every name
Paste a lead list, upload a file, or hand over raw notes for an assistant to untangle into rows. One template with variables becomes a personal note per lead, and every note is quality checked automatically for long pauses, repeated words and mangled endings before it can reach anyone.
Deliver
A page of their own
Each lead gets a branded page carrying their name, the note in your voice, and a reply one tap away. The whole site downloads as a folder of plain files: host it anywhere, no account for the lead, nothing that expires.
Built by João Queirós
Product build meets brand craft.
Tembr is a product I built and open sourced. The name, the logo, the ember waveform and the whole visual identity are mine as well.
Three findings that changed the product, each of them paid for by getting it wrong first.
The engine only hears ten seconds
A ninety second reference is roughly ninety percent ignored: the model conditions its decoder on the first ten seconds and its accent on the first six. Whichever seconds happen to lead the file decide the clone. Tembr now scans the whole take for its strongest ten seconds and conditions on that, so a nervous opening line no longer defines the voice.
Meters lose to a human ear
Nine voice versions were measured, compared and ranked. The winner, chosen by listening, was built from an older and technically worse recording, because it had been made in a quieter room. Every automated gate in the pipeline exists to catch what the ear should not have to: mangled words, debris after the final syllable, energy drifting mid-read.
Never patch audio to fill a gap
An early narration had its pauses filled with mirrored audio to smooth the timing. It read back as a clear echo of the preceding word, because a mirrored waveform is a perfect palindrome. Takes now ship exactly as the model rendered them, trimmed at word boundaries and never spliced.
The ten second figure is the finding the product is built around: it was discovered by reading the engine source while chasing an accent that kept drifting, and it now drives an automatic window selection every new voice gets for free. The seven films on the product site, from the trailer to the four tutorials, are narrated end to end by a Tembr voice rather than by a person, which is the most direct proof the studio works that the project could offer.
The product site answers you in a cloned voice, walks you through the studio step by step, and plays all seven films. The repository holds the whole system, licensed MIT.
When enabled, each question is processed by Cloudflare AI and checked for abuse with Turnstile. No chat history is stored by this app. Please leave out private information.