How to Convert Text Document to Speech on Ubuntu Using eSpeak

by SathiyaMoorthy on March 8, 2010

Photo Courtesy: db*photography

Photo Courtesy: db*photography

Ubuntu espeak is a speech synthesizer for English (and several other languages) which will convert text to speech.

You can straight away execute espeak command on your Ubuntu machine without any installation or configuration.

In this article, let us review 8 examples of espeak command.

espeak Example 1: Speak the words specified in command line

This is the default usage.

# espeak --stdout 'words to speak' | aplay

Note: The above may also display the following message: “Playing WAVE ’stdin’ : Signed 16 bit Little Endian, Rate 22050 Hz, Mono”

espeak Example 2: Speak the words specified in stdin

This will take the words interactively from the standard input and convert it to speech.

# espeak --stdout | aplay

espeak Example 3: Speak your document

This will convert the text from the mydocument.txt to speech.

# espeak --stdout -t mydocument.txt | aplay

espeak Example 4: Generate voice file from text document

Convert your text file to an audio file as shown below.

# espeak -t mydocument.txt -w myaudio.wav

Customizing espeak

If you find the default speech synthesizing is not good, you can try to customize it as explained below.

espeak Example 5: List all available voice languages

# espeak --voices
Pty Language Age/Gender VoiceName       File        Other Langs
 5  af             M  afrikaans         af
 5  bs             M  bosnian           bs
 5  ca             M  catalan           ca
 5  cs             M  czech             cs
 5  cy             M  welsh-test        cy
 5  de             M  german            de
 5  el             M  greek             el
 5  en             M  default           default
 5  en-sc          M  en-scottish       en/en-sc    (en 4)
.......

espeak Example 6: Choose a different voice language

The following will use “en-uk” – British english to translate the text to speech.

# espeak -v en-uk --stdout 'reading tips & tricks in TGS' | aplay

espeak Example 7: Increase or Decrease the number of spoken words per minute.

The default is 160 words per minute. You can reduce it using option -s as shown below.

# espeak -s 140 -f mydocument.txt | aplay

espeak Example 8: List the available espeak voices in specific language

The following example will display all possible english language variation that you can use for your text to speech conversion.

# espeak --voice=en
Pty Language Age/Gender VoiceName       File        Other Langs
 2  en-uk          M  english           en/en       (en 2)
 3  en-uk          M  english-mb-en1    mb/mb-en1   (en 2)
 2  en-us          M  english-us        en/en-us    (en-r 5)(en 3)
 5  en-sc          M  en-scottish       en/en-sc    (en 4)
 5  en             M  default           default
.....
Download Free eBook - Linux 101 Hacks

Get free Unix tutorials, tips and tricks straight to your email in-box.

If you enjoyed this article, you might also like..

  1. How To Convert Files To Different Formats Without Using Software
  2. Ctags and Taglist: Convert Vim Editor to Beautiful Source Code Browser for Any Programming Language
  3. Top 5 Best Linux Text Editors
  4. Ubuntu Tips: How To Manage Simple Projects Using Tomboy Notes
  5. Unix Sed Tutorial: Find and Replace Text Inside a File Using RegEx
  

Vim 101 Hacks Book

{ 5 comments… read them below or add one }

1 Ganesh March 8, 2010 at 4:38 am

nice features. thanks to bring her..

2 Seif Abaza March 8, 2010 at 5:48 am

it’s Good Way to leaning how to speaking any language :D

3 Chris F.A. Johnson March 8, 2010 at 12:36 pm

How does “Ubuntu espeak” differ from the version that is available for all Linux distros (as well as Windows)?

4 Paul March 8, 2010 at 1:33 pm

First, I must confess that I have gleaned much from the daily gems from this group. I appreciate your efforts greatly. Second, not meaning to be critical at all, but to clarify,

espeak Example 3: Speak your document

This will convert the text from the mydocument.txt to speech.

# espeak –stdout -t mydocument.txt | aplay

should the “-t” not in fact be -f (file)?

5 Soumya Mandi June 10, 2010 at 2:42 pm

Amazing .. I don’t know how I missed this ! Thanks a lot :)

Leave a Comment

Previous post:

Next post: