[Asterisk-Dev] Text to speech on Asterisk

Eric Wieling eric at fnords.org
Thu Nov 13 14:45:46 MST 2003


astdev at newww.com wrote:
> I'd like to kick around some ideas about using various text to speech
> engines with *.
> 
> First a question, I few weeks ago someone made a comment about using
> Cepstral with *. Is the Cepstral TTS for Linux a direct replacement
> for Festival? or is there a app_cepstral that exists somewhere? The
> quality of Cepstral is such that I wouldn't mind spending $30 just to
> try it out.  So I'm looking for info on how to use it with *

There is not an app_cepstral.  It should be be too tough to create one, 
however.  The API info in included with the $30 Cepstral product.  I 
don't recall is the libraries and headers are included with it or only 
in the $200 SDK product.  The way *I* use Cepstral is in an AGI script. 
  the script basically just wraps around the "theta" (Cepstral 
Text-to-wave program) then uses STREAM FILE to send the audio to the 
caller.  Cepstral us quite fast for Text-To-Wave/

> I've been using * since mid-summer and got festival working more or
> less right away. Not wanting to start a battle over the "Quality" of
> speech generated by Festival - using it as configured right out of the
> box - it's not good enough for my application. Of course assessing the
> "Quality" of TTS is a rather subjective - it depends on the nature of
> the text being spoken. For instance, I've used festival to read long
> blocks of text, such as email or fiction and it is rather
> comprehensible, but when used to read names and addresses, I often
> can't understand it.

There are other TTS products out there but the ones I've seen 
(Rethorical, specifically cost around $3,000)

> Festival appears to be the only open-source TTS option for use with
> *. There are other commercial TTS that range in price and quality
> several of which are based on festival. It seems to me that it would
> be a good approach to create a generic app_tts that could then use
> whatever backend engine the developer desires. This would be similar
> to the way Perl handles database engines thru the DBI/DBD
> modules. Anyone could write a TTS "driver" for a particular engine
> that could then be plugged in / specified by the app_tts. If the
> general opinion is that this is a good idea, I'd be happy to take the
> project on.

I am working on a TTS.pm Perl wrapper for Festival, Cepstral, and IBM's 
Linux version of ViaVoice TTS.  There's an untested pre-alpha version at 
http://www.fnords.org/~eric/asterisk/downloads/  I'm in the process of 
moving to a new city and so won't have time to do much more with it 
until the middle of December.





More information about the asterisk-dev mailing list