AI voice dialogue generator: conversations in several voices
A skit with two characters, a dialogue for language learners, a podcast with two hosts, a scene in a game: one voice reading everything sounds like a list, while two or three voices sound like people talking.
SuperClonica has natural and character voices in 31 languages, a free online test for single lines and a free engine that turns a whole script with speaker names into one audio file. This guide shows both ways.
Choose voices that contrast
Listen to every voice with the same line before choosing: differences are easier to hear side by side.
- Pair a lower and a higher voice, or a calm and a lively one, so listeners always know who is speaking.
- The ten stock voices, M1 to M5 and F1 to F5, are free and give you five male and five female voices to combine.
- Catalog character voices suit skits and fan scenes.
- Keep the same voice for each speaker through the whole series.
Voice each line free online
Type a line of 30 to 100 characters on the page of the first voice, choose the language and press Voice it, then do the same with the second voice for the reply. Download the recordings, with no account, and place them one after another in CapCut, Audacity or any editor.
Write a script for voices
A short pause between replies sounds natural; overlapping speech is not possible, so write interruptions as a cut-off line ending with a dash.
- Start each line with the speaker’s label and a colon, for example A: and B:.
- Keep replies short: real conversations go back and forth.
- Use full stops and question marks: the voice follows the punctuation.
- Write names, numbers and abbreviations the way they should sound.
One file from a whole script
Write the script in dialogue.txt with lines such as A: Did you hear that? and B: I did. Then install the free engine with python -m pip install superclonica-cpu and run python -c "import numpy as np; from superclonica import Superclonica; tts = Superclonica(); V = {'A': 'F2', 'B': 'M3'}; gap = np.zeros(int(0.4 * tts.sample_rate), dtype=np.float32); tts.save('dialogue.mp3', np.concatenate([np.concatenate([tts.synthesize(t.strip(), V[s.strip()], 'en')[0], gap]) for s, t in (l.split(':', 1) for l in open('dialogue.txt', encoding='utf-8') if ':' in l)]))". Each line is voiced by the voice assigned to its label, with 0.4 seconds of silence between replies, and the result is one dialogue.mp3. Add more speakers to the list, or replace F2 with the path to a voice file you bought.
Real people and fair use
Never make a fake conversation of real people that could be taken for a real recording. Character voices are fan-made and not endorsed by the rights holders, and parody voices are labeled as parody. For videos you earn money with, use the stock voices under the OpenRAIL-M license or voices you trained with consent.