Google TTS en Ubuntu

Posted on by

Si alguna vez has querido instalar un TTS ( Text to Speech ) y no has sabido cómo, te propongo una manera sencilla de utilizar el TTS de Google en Linux. Lo más habitual es instalar un addon en tu navegador, pero tienes la limitación de no poder usarlo en un PDF o en un archivo de texto.  De esta forma podrás usarlo independientemente del programa que estés usando simplemente subrayando el texto que quieras oír y pulsando una combinación de teclas a tu elección.

En primer lugar vamos a instalar el script say.sh, podrás descargarlo desde aquí o hacer un clone con git. Antes crearemos una carpeta para nuestros script en nuestra home

mkdir script
cd scripts
git clone https://gist.github.com/873364.git

Una vez descargado le habilitaremos los permisos de ejecución y lo movemos a /usr/bin/ para poder ejecutarlo en el terminal sin tener que poner la ruta en la que está.

cd 873364
chmod 755 say.sh
sudo mv say.sh /usr/bin/say.sh

Antes de ejecutarlo instalaremos todos los programas que necesitamos, mplayer y wget.

sudo apt-get install mplayer wget

Ahora hacemos una primera prueba para confirmar que funciona el script, al ejecutarlo con un texto como argumento del script, este se conectará con el servicio de TTS de Google y se descargará el audio que será reproducido con mplayer.

say.sh "hello world"

Perfecto, ya podemos hacer que nuestra consola diga lo que queramos, pero para que reproduzca el texto que subrayemos en cualquier programa tendremos que usar xsel. En primer lugar lo instalamos.

sudo apt-get install xsel

Para probarlo bastará simplemente con que subrayes algún texto en cualquier programa y ejecutes xsel en el terminal, éste te devolverá el texto subrayado.

xsel

Ahora tenemos que combinar el script say.sh con xsel. Puedes hacer una prueba, subrayando un texto y ejecutando el script say.sh:

xsel | ./say.sh

Crearé un script con esta combinación . Abre gedit y pega el siguiente texto y guárdalo en tu home con el nombre xsay.

#!/bin/bash
xsel | say.sh

Habilita los permisos de ejecución y cambia su ubicación a la carpeta /usr/bin.

chmod 755 xsay
sudo mv xsay /usr/bin/xsay

Ahora vamos a la configuración de teclado de ubuntu y asociamos una combianción de teclas para que ejecute xsay.

Asociando combinación de teclas en el menú de teclado de Ubuntu a la ejecución del script xsay.

Asociando combinación de teclas en el menú de teclado de Ubuntu a la ejecución del script xsay.

Yo he elegido Ctrl+Alt+E, ahora cuando subraye un texto y pulse esa combinación el script xsay lo leerá. Así de sencillo y como os decía antes os funcionará no solo en el navegador sino en cualquier otro programa en el que puedas subrayar el texto.

Por cierto si deseas otro idioma solo tendrás que editar el script say.sh para cambiar el parámetro LNG de la llamada que hace a Google.  Aquí os dejo algunos de ejemplo:
Bulgarian: bg
English: en
French: fr
German: de
Italian: it
Japanese: ja
Portuguese (Portugal): pt-PT
Romanian: ro
Russian: ru
Spanish: es
Swedish: sv
Turkish: tr

Category: Software | Tags: , , , ,
Comments are disabled