eSpeak (a compact open source software speech synthesizer)
eSpeak produces good quality English speech. It uses a different synthesis
method from other open source text to speech (TTS) engines, and sounds
quite different. It's perhaps not as natural or "smooth", but some find
the articulation clearer and easier to listen to for long periods. It
can run as a command line program to speak text from a file or from stdin.
Build options (environment variables):
PULSE Build PulseAudio output support (yes/no)? Default is "yes".
PORTAUDIO Build PortAudio output support (yes/no/auto)? Default is "auto",
which will build in PortAudio support if it's installed.
Use PortAudio[1] for plain ALSA[2] audio output, if you don't want to use
PulseAudio. However, if you're happy with PulseAudio, it's recommended NOT
to build PortAudio support into espeak (you won't need it anyway).
Note that if both options are "no" (or if PULSE=no and portaudio isn't
autodetected), the resulting binary will not be able to make sound
(it will only produce .wav files).
The slack-desc will be updated to let you know which audio drivers
(if any) were included.
[1] Using PortAudio with espeak results in a lot of scary-looking
warnings from espeak, but you can ignore them so long as you
can hear its speech.
[2] Or JACK audio, if your portaudio package was built with jack2 or
jack-audio-connection-kit installed. Or... PortAudio can also feed
audio to PulseAudio, if its daemon is running. Or, if you have OSS
modules loaded, PortAudio can use that, too. The Linux audio driver
ecosystem is a really weird place.