QtSpeech is cross-platform library based on Qt to provide common cross-platform API to access and use system TTS (Text-to-Speech) engines on platforms as Windows (using SAPI), Mac (SpeechSynthesis) and Linux (using Festival). Licensed as LGPL, so can be used on OpenSource and Commercial products.

Github Repository – QtSpeech

API, Examples:

Say something synchronously: (execution will wait in the point until speech is finished)

#include <QtSpeech>
QtSpeech voice;
voice.say("Hello World!");

Same in asynchronous way: (your application is not blocked meanwhile)

QtSpeech * voice = new QtSpeech(this);
voice->tell("Hello asynchronous world!");

Same call + invoke a slot at the end:

voice->tell("Hello!", this, SLOT(onSpeechFinished()));

Get list of voices available in your system:

QtSpeech::VoiceNames vs = QtSpeech::names();