Read Text Out Loud
Or paste subtitle text
The first run downloads the voice model and the phonemiser — about 98 MB together, served by this site and cached by the browser afterwards. The subtitle or text you drop in never leaves this tab. Choosing MP3 or M4A downloads a further 31 MB of encoder, which is why WAV is the default.
Options
A voice decides the accent and the timbre, and — less obviously — which sound system the text is read with. Pairing a Spanish voice with an English sentence does not fail: it reads English words with Spanish sounds, which is worse than an error message. Seven languages are offered, not twelve, because the phonemiser bundled with this page has no voice for Japanese or Chinese. Listen to a short file before committing to a long one; every voice carries the same model, so switching costs one synthesis, not one download.
How fast the voice reads, applied on top of the pace the model considers natural. Slow is 0.8× and fast is 1.2× — deliberately mild, because past roughly 1.5× the model starts swallowing syllables and the result sounds like someone rushing rather than someone speaking quickly. When a subtitle cue is too short for its line, this page raises the speed by itself up to 1.4× before it truncates, and that boost multiplies with the setting you choose here.
WAV is uncompressed 24 kHz mono, written here with no encoder at all — which is why it is the default and why nothing extra is downloaded for it. MP3 and M4A need the 31 MB video engine to compress, but come out roughly ten times smaller: ten minutes of speech is about 28 MB as WAV and about 2.8 MB as MP3. Pick WAV to audition a voice, MP3 to send the file to someone.
This page reads text out loud. Paste a paragraph or drop a file — a .txt, a .srt, a .vtt, any of the twelve subtitle formats — choose one of ten voices, and get back a single audio file of the whole thing spoken from beginning to end. Nothing is timed, because there is nothing to time against: the output is one continuous reading, not a track built to sit under picture.
When the file you drop is a subtitle file, the timecodes are parsed away and thrown out. What gets read is the text of each cue, in order, joined into paragraphs; line breaks inside a cue become spaces because they were typographic choices on screen, and cue boundaries become nothing at all. That is the opposite of what the narrate-subtitles page does, and the two pages exist side by side so the choice is visible rather than hidden in a checkbox: one produces sound that follows a timeline, the other produces sound that simply flows.
Text is synthesised in pieces rather than in one pass. The model's tokeniser silently truncates anything past 510 phonemes — a two-thousand-word article would come back as its first two sentences, and the file would look completely valid. So the text is split at paragraph breaks, then at sentence-ending punctuation, then harder still for a single sentence that exceeds 400 characters, and the pieces are synthesised one after another with a short pause between them. That is also where cancellation takes effect: the speaking happens on a thread of its own, so the cancel button stops it within a moment rather than waiting for the current sentence to finish, and the page stays usable while the audio is being made.
The voice list is ten voices across seven languages — English (US and UK), Spanish, French, Italian, Hindi and Brazilian Portuguese. Japanese and Chinese are not offered: the phonemiser used for pronunciation has no voice for either, so an option labelled Japanese would read kanji as English letters and sound confidently wrong. About 98 MB of model and phonemiser download once and are cached; the text you paste never leaves the browser, which matters when the paragraph is a client's letter or a medical note.
Frequently asked questions
If I drop a .srt file here, does the reading include the timecodes or the cue numbers?
Neither. The file is parsed with the same format layer the conversion pages use, and only each cue's text is kept — the index numbers, the 00:00:01,000 --> schema of the timings, and any inline tags like <i> or {\pos()} are gone before synthesis. What you hear is the words in the order they appear. If you want the timings to be respected instead of discarded, use the page that narrates a subtitle file to audio, which places each cue at its own start time.
Can the pasted-text box take a whole article, or is it only for a sentence or two?
A whole article is fine, because the text is chunked before it reaches the model. Pasted content is wrapped as a plain-text file and enters the same queue as a dropped file, so it gets the same 400-character chunking, the same progress bar and the same cancel button. The practical limit is memory rather than length: a long article produces a long WAV, and an hour of 24 kHz mono PCM is a few hundred megabytes, so choosing MP3 is worth it if the reading is going to be more than a few minutes.
Why do the pauses between sentences sound longer here than in the subtitle narration?
Because a quarter second of silence is inserted between chunks to keep consecutive sentences from running together, whereas the subtitle narration page places each line at a cue's exact start and fills whatever gap the subtitle already had. Here the gap is a fixed 250 ms regardless of content, since there is no timeline to be faithful to. Sentences inside one chunk are joined by the model's own punctuation handling, so only chunk boundaries — roughly every 400 characters — get that extra pause.
Which voices are available for Spanish and Portuguese, and are they one voice or several?
One each: ef_dora for Spanish and pf_dora for Brazilian Portuguese, alongside two English variants from the United States (af_heart, af_bella), one more American voice (am_michael), two British voices (bf_emma, bm_george), ff_siwis for French, hf_alpha for Hindi and if_sara for Italian. Multiple English voices exist because that is where most narration is requested; other languages get one so the list stays short enough to audition. A voice sets the accent as well as the timbre, so it also decides which language's phonemes the text is read with.
Is the resulting MP3 or M4A safe to publish as a podcast segment?
Technically yes — both are standard containers encoded by a local ffmpeg build, and the audio is 24 kHz mono, which is fine for speech and thin for music. Editorially, listen before publishing: the model sometimes clips a final consonant, stresses a proper noun oddly, or reads an abbreviation letter by letter. Nothing is uploaded while that happens, and no watermark or tracking is embedded, but a synthetic voice also carries no disclosure, so if your audience expects a human reader, say which one it is.