Bonus : Speak Easier: Flite

Flite (festival-lite) is a small, fast open source text to speech synthesis engine developed at CMU and primarily designed for small embedded machines and/or large servers. Flite is designed as an alternative text to speech synthesis engine to Festival for voices built using the FestVox suite of voice building tools.

While flite can be installed using the usual 'apt-get install flite' the current version will not work on Raspberry Pi's as of April 2019. The package was built without support for alsa which is required for Raspberry Pi. We will walk you through building your own version from scratch along with a few example commands for usage. You can replace festival in our code examples with "flite" should you need a faster more flexible program.

Building Flite

Let's move to the Downloads folder and install the necessary libasound2-dev package that flite requires:

Download: file
cd ~/Downloads
sudo apt-get install libasound2-dev

Next we will grab the latest version of the flite "tarball".

Download: file
wget http://www.festvox.org/flite/packed/flite-2.1/flite-2.1-release.tar.bz2

Now we can uncompress the files, change into the new source code directory and start the configure process. 

Download: file
tar -xvf flite-2.1-release.tar.bz2
cd flite-2.1-release
./configure --with-audio=alsa --with-vox=awb

It will take several minutes to compile the source even on todays fastest Raspberry Pi B+. We will use the make command command to start the compilation.

Download: file
make

Once the make command has completed without errors we can install the files using the following command:

Download: file
sudo make install

Reading Text

You are now set to try it out.  For simple text, use text after the -t flag:

Download: file
flite -t "All good men come to the aid of the rebellion"

and you can have flite speak the contents of a file with -f

Download: file
flite -f Thomas_Jefferson.txt

Sounds pretty good, eh?

You are not limited to the default voice.  If you type:

Download: file
flite -lv

you get a list of available voices like this:

To use a different voice, use the -voice flag followed by one of the voices in the listing

flite -voice awb -t "The Raspberry Pi is a great Maker platform!"

If you would like one of the voices listed but not installed by default, they can be downloaded from the Flite website.

There is a large selection of voices to choose from in the download area of the Flite website

WAV File Output

If you have only a fixed set of phrases, it might be better to have the sentences in an audio file instead of generating them every time you want them spoken.  Fortunately Flite will save its voice to a wav file (a standard sound file format):

Download: file
flite -t "Shall we play a game?" -o wargames1.wav
flite -t "Lets play global thermonuclear war." -o wargames2.wav

You can then use a number of Linux programs to output the text file when you need to.  aplay is one such program already on the Raspberry Pi:

Download: file
aplay wargames1.wav
aplay wargames2.wav

You can even copy these wav files to your PC/Mac or Arduino wave shield SD card and play the voices on other equipment.

This guide was first published on Feb 01, 2016. It was last updated on Feb 01, 2016. This page (Bonus : Speak Easier: Flite) was last updated on Jul 20, 2019.