Skip to content

Cloning guide

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

AspectAim forAvoid
Length10–20 s of speech (3 s minimum, 60 s maximum)Under 5 s: the clone drifts on long text
SpeakersOne speakerA second voice, a reply, a crowd
BackgroundA quiet room, close to the microphoneMusic, traffic, fans, echo of a large room
DeliveryNatural sentences at the pace the voice speaks laterWhispering, shouting, reading a list of single words
LevelSpeech clearly audible, no clippingAudio that distorts on loud syllables
FormatWAV or FLAC; MP3 at 128 kb/s or morePhone-call audio, heavily compressed files
  • A transcript of the exact words helps: every cloning model reads one as reference_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.

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

  1. Save the voice (POST /v1/media/voices). status is ready at once; preview_job names the preview job.
  2. 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.
  3. 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.
  4. Try a second model from the voice's models for 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-*.mp3

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.