El día de hoy comparto con Uds. un script muy útil para convertir un texto a voz utilizando el motor de voz de Google. La ventaja principal de este script es que «evade» el límite de 100 bytes impuesto por Google. En realidad, para ser honestos, respeta este límite pero envía todas las líneas en forma automática con lo cual dicha limitación pasa desapercibida para el usuario. Los más exigentes notarán, no obstante, que la conversión no es de la misma calidad que la que podemos obtener en Google Translate, principalmente debido a este límite y que no es posible pasar el texto entero de un sólo golpe. Como punto positivo, cabe agregar que este script también permite especificar el idioma del texto a convertir.
Hecha la aclaración, veamos cuáles son los pasos a seguir.
Pasos a seguir
1.- Crear un archivo con el nombre t2s.sh.
2.- Copiar el siguiente contenido:
#!/bin/bash ################################# # Speech Script by Dan Fountain # # Modified by UsemosLinux # # [email protected] # ################################# INPUT=$* STRINGNUM=0 ary=(${INPUT:2}) echo "---------------------------" echo "Speech Script by Dan Fountain" echo "[email protected]" echo "---------------------------" for key in "${!ary[@]}" do SHORTTMP[$STRINGNUM]="${SHORTTMP[$STRINGNUM]} ${ary[$key]}" LENGTH=$(echo ${#SHORTTMP[$STRINGNUM]}) #echo "word:$key, ${ary[$key]}" #echo "adding to: $STRINGNUM" if [[ "$LENGTH" -lt "100" ]]; then #echo starting new line SHORT[$STRINGNUM]=${SHORTTMP[$STRINGNUM]} else STRINGNUM=$(($STRINGNUM+1)) SHORTTMP[$STRINGNUM]="${ary[$key]}" SHORT[$STRINGNUM]="${ary[$key]}" fi done for key in "${!SHORT[@]}" do #echo "line: $key is: ${SHORT[$key]}" echo "Playing line: $(($key+1)) of $(($STRINGNUM+1))" mplayer "http://translate.google.com/translate_tts?ie=UTF-8&tl=${1}&q=${SHORT[$key]}" done
3.- Otorgar permisos de ejecución al script:
sudo chmod +x t2s.sh
4.- Ejecutar el script pasando como parámetros: a) el código del idioma correspondiente al texto, b) el texto que se desea convertir. Por ejemplo:
./t2s.sh es Este es un texto muy interesante para convertir.
Eso es todo, espero que lo disfruten.