Asterisk Text to Speech with Cepstral

Cepstral-TTS.jpgSince I did not like Asterisk’s default Text2Speech program Festival due to its weird machine voice. Therefore with couple of suggestions I decided to use Cepstral TTS program which I found a lot better in demo and I found quite feasible according to my requirements. Then after I was looking for the Cepstral application module that I could integrate with my Asterisk 1.2.x, but unfortunately I have been facing so hard experience, I tried different Cepstral module but I haven’t had luck to make them properly work. Finally I found Swift module application that worked just fine for me. So I thought to share my thoughts with you guys as under:

[general]

voice=Katrin ; set german female voice as default, otherwise use system default

goto_exten=yes ; wether to jump to the extension when a key was pressed

buffer_size=65535 ; Number of bytes of audio data to buffer from the Swift libraries.

; 8192 (8kbytes ~1second) is a practical minimum

How-to Swift TTS make work with Asterisk:

In the first hand go to Cepstral website Cepstral Voices and download your favorite voice, in my case I liked David voice. If you have downloaded more than one voice, you can select any of them to be active from the swift.conf as mentioned in following example:

1. Download Swift module from the following link:

app_swift-0.9.tar.gz for Asterisk 1.2 (no longer maintained)

app_swift-0.9.1.tar.gz for Asterisk 1.4 2.

2. Extract the Swift package you just downloaded:

[root@daud ~]# tar -xzf app_swift-release.tgz

3. Change directory to swift and run the following command:

make install

for Asterisk 1.2 (no longer maintained) for Asterisk 1.4 2. Extract the Swift package you just downloaded:3. Change directory to swift and run the following command:

4. Simply restart asterisk and load the app_swift.so module with the following command:

load app_swift.so

5. Show application Swift

contratulation, you have successfully installed the Swift module and it should be ready to read your text in dialplan, as in example below:

6. open extensions.conf and put the following example to test it:

exten => s,1,Wait(2) ; give it 2 seconds to open the line

exten => s,2,Swift(This text is going to get spoken by the Swift engine to the caller)

exten => s,3,Swift(You can press buttons on your keypad at any time)

exten => 1,1,Swift(Diane^You’ve pressed 1) ; set to english female voice

exten => 5,1,Swift(Next message here) ; set to German male voice

Tags: , , , , , , , , , , ,

Related posts