systemadmin.es > Utilidades > eSpeak: Sintetizador de voz por linea de comandos

eSpeak: Sintetizador de voz por linea de comandos

Entre los muchos juguetes por linea de comandos que existen en Linux tenemos un sintetizador de voz llamado eSpeak

Su uso mas simple consiste en pasar lo que queremos sintetizar por stdin y lo oiremos directamente por los altavoces del equipo:

$ echo "all your base are belong to us" | espeak

También podemos escribirlo en un fichero .WAV mediante la opción -w:

$ echo "all your base are belong to us" | espeak -w all.wav

También podemos seleccionar otros idiomas, para ver un listado de los instalados podemos usar la opción –voices sin parámetros para verlas todas:

$ espeak --voices
Pty Language Age/Gender VoiceName       File        Other Langs
 5  af             M  afrikaans         af          
 5  bs             M  bosnian           bs          
 5  ca             M  catalan           ca          
(...)

Si indicamos un idioma nos mostrará todas las voces disponibles:

$ espeak --voices=en
Pty Language Age/Gender VoiceName       File        Other Langs
 2  en-uk          M  english           en/en       (en 2)
 3  en-uk          M  english-mb-en1    mb/mb-en1   (en 2)
 2  en-us          M  english-us        en/en-us    (en-r 5)(en 3)
 5  en-sc          M  en-scottish       en/en-sc    (en 4)
 5  en             M  default           default     
 5  en             F  en-german-5       mb/mb-de5-en 
 5  en             F  en-swedish-f      mb/mb-sw2-en 
 7  en             M  en-greek          mb/mb-gr2-en 
 5  en-us          M  us-mbrola-2       mb/mb-us2   (en 7)
 5  en-us          F  us-mbrola-1       mb/mb-us1   (en 8)
 5  en-us          M  us-mbrola-3       mb/mb-us3   (en 8)
 9  en             M  en-german         mb/mb-de4-en 
 9  en             M  en-romanian       mb/mb-ro1-en 
10  en             M  en-dutch          mb/mb-nl2-en 
10  en             M  en-french         mb/mb-fr1-en 
10  en             F  en-french         mb/mb-fr4-en 
10  en             F  en-hungarian      mb/mb-hu1-en 
11  en             M  en-afrikaans      mb/mb-af1-en 
11  en             F  en-polish         mb/mb-pl1-en 
11  en             M  en-swedish        mb/mb-sw1-en 
 5  en-uk-north    M  lancashire        en/en-n     (en-uk 3)
 5  en-wi          M  en-westindies     en/en-wi    (en-uk 4)
 5  en-uk-rp       M  english_rp        en/en-rp    (en-uk 4)
 5  en-uk-wmids    M  english_wmids     en/en-wm    

Mediante la opción -v podemos especificar el idioma para sintetizar el texto:

$ echo "la culpa es de todos menos mía" | espeak -v es

Otra opción es festival, que veremos otro día.

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>