SPEAK-NG(1)

πŸ’– speak-ng(1) β€” the manual page, but make it make sense πŸ’–

okay so bestie, gather round, because we're talking about speak-ng(1) today and honestly? it's iconic. this is the manual page for it, and i'm gonna walk you through every single flag like we're texting at 2am. no cap, nothing gets skipped. 🫢


✨ NAME ✨

speak-ng β€” a multi-lingual software speech synthesizer. yes, it talks. for you. in multiple languages. main character energy fr fr. πŸ‘‘


🌸 SYNOPSIS 🌸

speak-ng [options] [<words>]

that's it. that's the whole vibe. options, then optionally some words. slay.


πŸ¦‹ DESCRIPTION πŸ¦‹

speak-ng is a software speech synthesizer for English, and some other languages. literally that's the whole description and honestly it understood the assignment. it synthesizes speech. in software. πŸ’…


πŸŽ€ OPTIONS πŸŽ€

okay this is the part where i hold your hand through every single flag, so buckle up buttercup, we're going through all of them. 🌈

  • -h, --help β€” shows you a lil summary of the options. the "what is going on" button. πŸ†˜
  • --version β€” prints the espeak library version and where the espeak voice data lives. two-for-one info drop. ✨
  • -f <text file> β€” the text file you want it to speak. give it a file, it reads it out loud. πŸ“„
  • --stdin β€” read the text input from stdin instead of a file. pipe it in, bestie. 🧚

and here's the lowkey important rule: if neither -f nor --stdin are provided, then <words> are spoken β€” or, if no words are provided either, then text is spoken from stdin a line at a time. so it always has a plan. πŸ’€

  • -q β€” quiet mode, donΒ΄t produce any speech at all. sounds fake but it's real β€” and it may be useful with -x. 🀫
  • -a <integer> β€” amplitude, 0 to 200, and the default is 100. louder or softer, your call. πŸ”Š
  • -g <integer> β€” word gap. that's the pause between words, measured in units of 10ms at the default speed. the dramatic pause setting. ⏸️
  • -k <integer> β€” indicate capital letters with: 1=sound, 2=the word "capitals", and higher values = a pitch increase (try -k20). yes that's real, go be extra. πŸ” 
  • -l <integer> β€” line length. if it's not zero (which is the default, jsyk), then lines less than this length get treated as end-of-clause. 🎯
  • -p <integer> β€” pitch adjustment, 0 to 99, default is 50. make it squeaky or make it dramatic. 🎡
  • -s <integer> β€” speed in words per minute, default is 175. fast talker mode unlocked. ⚑
  • -v <voice name> β€” use the voice file with this name from espeak-ng-data/voices. and plot twist: a variant can be specified using voice+variant, such as af+m3. the + is doing the most and we love her. πŸ—£οΈ
  • -w <wave file name> β€” write the output to this WAV file instead of speaking it directly. for the archivists. πŸ’Ύ
  • --split=<minutes> β€” used with -w to split the audio output into <minutes> recorded chunks. chunk it up. 🍰
  • -b β€” input text encoding: 1=UTF8, 2=8 bit, 4=16 bit. pick your encoding, bestie. πŸ”€
  • -m β€” indicates that the text contains SSML (Speech Synthesis Markup Language) tags or other XML tags. those SSML tags which are supported are interpreted. other tags, including HTML, are ignored β€” except that some HTML tags such as <hr> <h2> and <li> ensure a break in the speech. so HTML is mostly invisible but sometimes it makes the speech pause. rude but okay. πŸ™ˆ
  • -x β€” write phoneme mnemonics to stdout. the receipts of how it's saying things. πŸ“
  • -X β€” write phonemes mnemonics and translation trace to stdout. and if the rules files have been built with --compile=debug, line numbers will also be displayed. detective mode. πŸ”
  • -z β€” no final sentence pause at the end of the text. it just. stops. πŸ’€
  • --stdout β€” write the speech output to stdout. pipe the talking. 🌊
  • --compile=voicename β€” compile the pronunciation rules and dictionary in the current directory. =<voicename> is optional and specifies which language is compiled. πŸ› οΈ
  • --compile-debug=voicename β€” same as above, compile the pronunciation rules and dictionary in the current directory, but include line numbers, that get shown when -X is used. debug girlies rise. πŸ›
  • --ipa β€” write phonemes to stdout using International Phonetic Alphabet. and the variants: --ipa=1 Use ties, --ipa=2 Use ZWJ, --ipa=3 Separate with _. three flavours, all valid. 🌍
  • --tie=<character> β€” the character to use to join multi-letter phonemes in -x and --ipa output. glue, but make it a character. 🧷
  • --path=<path> β€” specifies the directory containing the espeak-ng-data directory. point it home. 🏠
  • --pho β€” write mbrola phoneme data (.pho) to stdout or to the file in --phonout. πŸ“Ό
  • --phonout=<filename> β€” write output from -x -X commands and mbrola phoneme data to this file. πŸ“
  • --punct="<characters>" β€” speak the names of punctuation characters during speaking. and if =<characters> is omitted, all punctuation is spoken. so it'll say "comma" out loud. legendary. ❗
  • --sep=<character> β€” the character to separate phonemes from the -x and --ipa output. the divider. βž–
  • --voices[=<language code>] β€” lists the available voices. if =<language code> is present then only those voices which are suitable for that language are listed. filter that list, bestie. 🎚️
  • --voices=<directory> β€” lists the voices in the specified subdirectory. different directory, different roster. πŸ“‚

πŸ”₯ EXAMPLES πŸ”₯

these are the copy-paste-and-go moments, keep them exactly as they are, they're precious:

speak-ng "This is a test"

speak the sentence "This is a test" using the default English voice. the classic. 🎀

speak-ng -f hello.txt

speak the contents of hello.txt using the default English voice. πŸ“„

cat hello.txt | speak-ng

speak the contents of hello.txt using the default English voice. same energy, different pipe. 🐈

speak-ng -x hello

speak the word "hello" using the default English voice, and print the phonemes that were spoken. show your work. ✍️

speak-ng -ven-us "[[h@Β΄loU]]"

speak the phonemes "h@Β΄loU" using the American English voice. hand-crafted phonemes, we stan. πŸ‡ΊπŸ‡Έ

speak-ng --voices

list all voices supported by eSpeak. the whole roster. 🌟

speak-ng --voices=en

list all voices that speak English (en). πŸ‡¬πŸ‡§

speak-ng --voices=mb

list all voices using the MBROLA voice synthesizer. πŸŽ›οΈ


πŸ’œ AUTHOR πŸ’œ

eSpeak NG is maintained by Reece H. Dunn msclrhd@gmail.com. it's based on eSpeak by Jonathan Duddington jonsd@jsd.clara.co.uk. 🫢

and this manual page is based on the eSpeak page written by Luke Yelavich themuso@ubuntu.com for the Ubuntu project. credit where credit is due, always. πŸ’–


ngl the source is src, the version date is March 2025, and that's a wrap bestie β€” go make your computer talk. πŸ¦‹βœ¨πŸŽ€
πŸ“¦ where this page comes from