ESpeak is a software speech synthesizer for English, and some other languages.
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.
* Includes different Voices, whose characteristics can be altered.
* Can produce speech output as a WAV file.
* Can translate text to phoneme codes, so it could be adapted as a front end
for another speech synthesis engine.
* Potential for other languages. More than 40 languages are included.
* Compact size. The program and its data total about 350 kbytes.
* Written in C++.