Convert Text to Speech on Linux

Text to speech software isn't just for blind or partially sighted people. It can be useful for converting text to speech on the fly or to audio files to listen on your portable audio player. You can even set up instant messaging software to turn your messages into speech.

Steps

  1. Download festival, espeak or freetts.
  2. Install festival (Press Ctrl and D to exit it when it is running) or espeak.
  3. A default voice is included but you can get voices from FestVox, MBROLA project, CMU Arctic or Nitech HTS.
  4. Unpack them by typing for t in `ls` ; do tar xvf $t ; done.
  5. Install them
    sudo mkdir -p /usr/share/festival/voices/english/
    sudo mv * /usr/share/festival/voices/english/
    .
  6. Get an audio encoder.
  7. Go to the command line.
  8. In festival type (SayText "Hello and welcome to Wikihow")
  9. To see a list of installed voices type (voice.list). To switch to a voice, type (voice_us2_mbrola) for example.
  10. Or from the command line type echo "It's such a beautiful day! Why are you in front of the computer?" | festival --tts
  11. Convert.
  12. Type (quit) to quit.



Tips

  • If you have problems with adding voices, you probably need to install festlex-cmu and festlex-poslex packages.
  • can't open /dev/dsp or a similar error message generally means some other software is using your sound system. Close it before trying to synthesize speech.

Related Articles

Sources and Citations