martes, 26 de julio de 2011

Asterisk 10: Text to Speech

Text to Speech - Cepstral



Es un programa TTS(Text to Speech), en otras palabras conversión de Texto a Voz
Cepstral es un sistema TTS que se puede integrar a Asterisk (1.2, 1.4, 1.6, 1.8, 10)
gracias a un módulo dedicado.

Cepstral es un módulo comercial, con un pago de US$30 dolares por canal, podemos tener un motor de texto a voz.

Cabe mencionar que el módulo para la integración de Cepstral con Asterisk lo escribió y lo actualiza Darren Sessions.

A continuación se describe como implementar Cepstral en Asterisk.

Descargamos la voz de prueba en el sitio de Cepstral
ingresamos a la pagina: http://cepstral.com/downloads/



Seleccionamos la Voz de Miguel



Descargamos el paquete:
# wget http://downloads.cepstral.com/cepstral/x86-64-linux/Cepstral_Miguel-8kHz_x86-64-linux_5.1.0.tar.gz

Procedemos a desmpaquetar:
#tar -xf Cepstral_Miguel-8kHz_x86-64-linux_5.1.0.tar.gz

Procedemos a instalar:
#cd Cepstral_Miguel-8kHz_x86-64-linux_5.1.0
#./install.sh

aceptamos la licencia, escogemos la carpeta /opt/swift para la instalación y configuración de datos

Para que linux sepa donde ir a buscar la librerias de Cepstral hay que indicarselo modificando el archivo ld.so.conf
#vim /etc/ld.so.conf

agregamos una linea:
/opt/switf/lib

procedemos a guardar los cambios y actualizar las librerias:
#ldconfig -v

Hasta este punto tenemos instalado la Voz de Cepstral, ahora se tiene que instalar el módulo para asterisk.

SWIFT:
Es un módulo de aplicación de Asterisk que utiliza la biblioteca de Cepstral para la conversión de texto a Voz de manera nativa.

Instalando el módulo para Asterisk



Ingresamos a la siguiente página:
http://forge.asterisk.org/gf/project/app_swift/frs/



Procedemos a descargar el modulo para asterisk 10:

#cd /usr/src/
#wget http://forge.asterisk.org/gf/download/frsrelease/112/167/app_swift-2.1-b1-ast10.tar

Se descomprime:
#tar -xf app_swift-2.1-b1-ast10.tar

Compilamos e instalamos:
#cd app_swift-2.1-b1-ast10
#make
#make install

Reiniciamos Asterisk:
#/etc/init.d/asterisk restart

Procedemos a validar que el modulo este implementado:
#asterisk -rvvvvvvvvvvv
*CLI> module show like app_swift
Module Description Use Count
app_swift.so Cepstral Swift TTS Application 0
1 module loaded

Salimos de la consola
CLI> quit

En la carpeta donde están los archivos de configuración de asterisk encontraremos un
nuevo archivo: swift.conf. Tenemos que modificarlo para terminar la integración de
Cepstral en Asterisk

#vim /etc/asterisk/swift.conf

[general]
buffer_size=65535
goto_exten=yes
voice=Miguel-8kHz

Guardamos y cargamos los cambios en asterisk:

#asterisk -rvv
*CLI>reload

Finalmente realizamos la prueba de fuego:

Un dialplan básico:
#vim /etc/asterisk/extensions.conf
[funciones]
exten=> 666,1,Answer()
same=>n,Playback(welcome)
same=>n,Swift(Espere en línea en unos momentos lo atenderemos)
same=>n,Wait(1)
same=>n,Hangup()


Guardamos y cargamos los cambios:
#asterisk -rvvv
*CLI>dialplan reload

Referencias:
http://voip-info.org
http://voztovoice.org
http://cepstral.com/cgi-bin/downloads
http://downloads.digium.com/pub/telephony/res_cepstral/README

No hay comentarios.: