TTS (Text to Speech)
TTS; Short for text-to-speech, a form of speech synthesis that converts text into spoken voice output. TTS systems were first developed to aid the visually impaired by offering a computer-generated spoken voice that would "read" text to the user.
Festival
Festival is a Linux TTS application that is used with an Asterisk application called Festival. The voice from Festival is pretty raw and is very synthesised. It's free and it does work.
Installation
To install festival is quite easy. It is just a matter of using the CentOS repository.
yum install festival
Configuration for Asterisk
Once Festival is installed you need to edit the following file and make the required changes.
/usr/share/festival/festival.scm Add the following contents to the end of the file but place it above the last line.
;;; Command for Asterisk begin (define (tts_textasterisk string mode) "(tts_textasterisk STRING MODE) Apply tts to STRING. This function is specifically designed for use in server mode so a single function call may synthesize the string. This function name may be added to the server safe functions." (utt.send.wave.client (utt.wave.resample (utt.wave.rescale (utt.synth (eval (list 'Utterance 'Text string))) 5) 8000))) ;;; Command for Asterisk end
Find the line defvar server_access_list and change the localhost settings with: Make sure to change the line hostname.mydomain.com with the FQDN of the server.
'("localhost\\.localdomain" "localhost" "hostname.mydomain.com")
NeoSpeech
NeoSpeech is a TTS appliction that is much more fluid than Festival. NeoSpeech can be purchased from NextUp for under AU$50.