A cloned voice copies the speaker, the room and the microphone of its reference clip. A clean clip of 10–20 s gives a clone that holds over long text; noise, music and a second speaker in the clip come back in every line the voice speaks. The Voices page has the API.
The clip
| Aspect | Aim for | Avoid |
|---|---|---|
| Length | 10–20 s of speech (3 s minimum, 60 s maximum) | Under 5 s: the clone drifts on long text |
| Speakers | One speaker | A second voice, a reply, a crowd |
| Background | A quiet room, close to the microphone | Music, traffic, fans, echo of a large room |
| Delivery | Natural sentences at the pace the voice speaks later | Whispering, shouting, reading a list of single words |
| Level | Speech clearly audible, no clipping | Audio that distorts on loud syllables |
| Format | WAV or FLAC; MP3 at 128 kb/s or more | Phone-call audio, heavily compressed files |
- A
transcriptof the exact words helps: every cloning model reads one asreference_text. Without a transcript, the worker transcribes the clip on first use and stores the text on the voice. - Trim silence at both ends. A pause inside the clip is fine.
- In the browser, record at least 15 s and keep the microphone at the same distance throughout.
Consent
A cloned voice is a person's voice. Clone your own voice, or a voice whose speaker agreed, and write the agreement in
consent (who, for what use, when). Sharing a cloned voice with members or the public needs the consent note, and
only the owner account shares. Never clone a film or TV character or a public figure. A designed voice
(POST /v1/media/voices/design) needs no speaker: the model invents the voice from a description.
Check a saved voice
- Save the voice (
POST /v1/media/voices).statusisreadyat once;preview_jobnames the preview job. - Wait for
preview_url(a few seconds when the GPU worker is up) and listen to the preview: the default model says one neutral line in the voice. - Speak a paragraph of the text the voice is for. A clone that sounds muffled, echoing or noisy reflects the clip: record again rather than switch models.
- Try a second model from the voice's
modelsfor a different balance of likeness and stability.
curl
VOICE=$(curl -sS --fail-with-body "https://citadel.albastov.com/v1/media/voices?category=designed&limit=1" \
-H "Authorization: Bearer $CITADEL_API_KEY" | python3 -c 'import json, sys; print(json.load(sys.stdin)["data"][0]["id"])')
for MODEL in omnivoice higgs3; do
curl -sS --fail-with-body https://citadel.albastov.com/v1/audio/speech \
-H "Authorization: Bearer $CITADEL_API_KEY" \
-H "Content-Type: application/json" \
-d "{\"model\": \"$MODEL\", \"voice\": \"$VOICE\", \"input\": \"A paragraph in the style the voice is for, read at its usual pace.\"}" \
--output "check-$MODEL.mp3"
done
ls -l check-*.mp3Recommended models
The recommended cloning models below are read from the catalogue each time the page is served; each sample is the
shared sample line spoken in the docs voice, a synthetic voice designed by omnivoice. GET /v1/media/models?kind=speech
lists every speech model with its parameters, and a voice's models lists every model that speaks the voice.
Sample line: “The river bends past the old mill, where a narrow footbridge crosses to the orchard on the far bank, and the path climbs gently into the hills.”
OmniVoice
Recommended · omnivoice · speech · voice cloning
Clone a voice, design one from a description (instruct), or let the model pick one; 600+ languages; non-verbal tags such as [laughter].
Speed: about 5 s per job (catalogue estimate).
Sample: 7.7 s of audio, generated in 6.3 s on the GPU worker, spoken in the docs voice.
BreezeTTS 2
Recommended · breeze2 · speech · voice cloning
Voice clone with an optional description of how it should sound. Chinese and English.
Speed: about 4 s per job (catalogue estimate).
Sample: 7.8 s of audio, generated in 16 s on the GPU worker, spoken in the docs voice.
Higgs Audio v3 4B
Recommended · higgs3 · speech · voice cloning
Voice clone. Long lines are split into short chunks.
Speed: about 4 s per job (catalogue estimate).
Sample: 8.3 s of audio, generated in 10 s on the GPU worker, spoken in the docs voice.
Changelog
- 2026-11-02: Page added.