Lector de textos con voz eSpeak NG en ArchLinux

Vamos a instalar en nuestro ArchLinux un interesante programa de lectura de textos con voz llamado eSpeak NG.

Bajo licencia GPL3, este software permite reproducir voces en un gran número de idiomas, sea vía terminal o archivo de texto.

Para la instalación, haremos uso de los repositorios estándares de ArchLinux:

# pacman -S espeak-ng

Si queremos reproducir un texto por los altavoces del sistema basta con pasárselo como parámetro.

$ espeak-ng "esto es una prueba"

Nótese que, tal cual, la voz sonará con tal acento «guiri» que solo nos serviría para echar unas risas. Para ver el listado de voces compatibles en idioma español, lanzaremos la aplicación con el paŕametro –voices=es:

$ espeak-ng --voices=es
Pty Language       Age/Gender VoiceName          File                 Other Languages
 3  es              --/F      spanish-mbrola-3   mb/mb-es3            
 4  es              --/M      spanish-mbrola-4   mb/mb-es4            
 5  es              --/M      Spanish_(Spain)    roa/es               
 5  es-419          --/M      Spanish_(Latin_America) roa/es-419           (es-mx 6)(es 6)
 7  es              --/M      spanish-mbrola-1   mb/mb-es1            
 7  es              --/M      spanish-mbrola-2   mb/mb-es2            
 7  es-mx           --/M      mexican-mbrola-1   mb/mb-mx1            (es 8)
 7  es-mx           --/M      mexican-mbrola-2   mb/mb-mx2            (es 8)
 7  es-vz           --/M      venezuala-mbrola-1 mb/mb-vz1            (es 8)

Con el paŕametro -v podemos pasar el descriptor asociado a la voz elegida:

$ espeak-ng -v roa/es "esto es una prueba"

No obstante, algunas voces (como las mb/mb-es, correspondientes al sintetizador de voz MBROLA) podrían devolvernos una salida de este tipo:

mbrola: FATAL ERROR : cannot find file /usr/share/mbrola/voices/es1 !
mbrowrap error: mbrola closed stderr and did not exit
Error: Could not load the specified mbrola voice file.

Esto significa que, a pesar de ser compatible con aquellas, no tenemos instaladas las voces correspondientes. Lo solucionaremos instalándolas desde AUR:

# paru -S mbrola-voices-es1 mbrola-voices-es2 mbrola-voices-es3 mbrola-voices-es4

Esta aplicación tiene muchas opciones en línea de comando que nos permiten ajustar el tono (-p), la velocidad (-s) o la amplitud (-a). También nos da la opción de guardar el sonido como un archivo WAV:

$ espeak-ng -v roa/es "esto es una prueba" -w prueba.wav

O como MP3:

$ espeak-ng -v roa/es "esto es una prueba" --stdout | ffmpeg -i - -ar 44100 -ac 2 -ab 192k -f mp3 prueba.mp3

Deja un comentario