Enviado por admin el
Ya hemos visto como implementar Festival en Asterisk y como instalar las voces en español. Como me han hecho notar algunos visitantes de este sitio, la calidad no es muy buena. Existe un proyecto de la Junta de Andalucía cuyo fruto son dos paquetes (para Debian) que contienen una voz masculina y otra femenina para Festival. Hoy veremos como convertir los paquetes debian (.deb) a CentOS (.rpm) y como cambiar la configuración de Festival para que se puedan utilizar en Asterisk.
Para trasformar un paquete de una distribución a otra existe el programa Alien (escrito en perl). Si no lo tenemos instalado es el momento de hacerlo:
yum install perl
Instalamos también una utilidad para crear los paquetes en CentOS:
yum install rpm-build
Ahora descargamos Alien:
cd /usr/src
wget http://ftp.de.debian.org/debian/pool/main/a/alien/alien_8.78.tar.gz
Lo descomprimimos:
tar –xf alien_8.78.tar.gz
entramos en la carpeta y lo instalamos:
cd alien
perl Makefile.PL
make
make install
Ahora bajos los dos paquetes Debian con las voces en español para festival:
wget http://forja.guadalinex.org/repositorio/frs/download.php/154/festvox-sfl...
wget http://forja.guadalinex.org/repositorio/frs/download.php/153/festvox-pal...
Trasformamos los paquetes en .rpm:
alien –rv festvox-palpc16k_1.0-1_all.deb
alien –rv festvox-sflpc16k_1.0-1_all.deb
Llegados a este punto podemos instalar los dos paquetes para CentOS:
rpm –ivh festvox-palpc16k-1.0-2.noarch.rpm
rpm –ivh festvox-sflpc16k-1.0-2.noarch.rpm
En la carpeta /usr/share/festival/voices/spanish encontraremos estas dos carpetas:
JuntaDeAndalucia_es_pa_diphone JuntaDeAndalucia_es_sf_diphone
La primera es la voz masculina y la segunda la voz femenina.
Modificamos la configuración de Festival para usar la voz femenina:
nano /usr/share/festival/festival.scm
y antes de la ultima línea del archivo pegamos:
;(language__spanish)
(set! voice_default 'voice_JuntaDeAndalucia_es_sf_diphone)
(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."
(let ((wholeutt (utt.synth (eval (list 'Utterance 'Text string)))))
(utt.wave.resample wholeutt 8000)
(utt.wave.rescale wholeutt 5)
(utt.send.wave.client wholeutt)))
Guardamos los cambios y hacemos nuestras pruebas. Notarán un mejoramiento de la calidad.
1 comentario
La URL de los paquetes Debian
Enviado por Anónimo (no verificado) el
La URL de los paquetes Debian de las voces ha cambiado:
wget http://forja.guadalinex.org/repositorio/frs/download.php/154/festvox-sfl...
wget http://forja.guadalinex.org/repositorio/frs/download.php/153/festvox-pal...
Ahora son:
wget http://forja.guadalinex.org/frs/download.php/154/festvox-sflpc16k_1.0-1_...
wget http://forja.guadalinex.org/frs/download.php/153/festvox-palpc16k_1.0-1_...