Utente:Amux/Sintesi vocale da command line con Google

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
#!/bin/bash
#
# Richiede python e mplayer
#
# invocazione:
#   ./parla.sh ciao, questa è una bellissima voce sintetica fatta da google!
#
set -eu -o pipefail

FREQ_FACTOR="0.75"
DESTFILE="/tmp/x.mp3"
STR="$*"
ENCODED=$(python -c "import sys, urllib as ul; print ul.quote_plus(sys.argv[1])" "${STR}")
LINK="https://translate.google.it/translate_tts?ie=UTF-8&q=${ENCODED}&tl=it"

echo "LINK: ${LINK}"
# per usare VLC:
#curl ${LINK} -H "Host: translate.google.it" -H "User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:33.0) Gecko/20100101 Firefox/33.0" | tee ${DESTFILE} | vlc - vlc://quit &

# con mplayer possiamo variare il pitch
curl ${LINK} -H "Host: translate.google.it" -H "User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:33.0) Gecko/20100101 Firefox/33.0" | tee ${DESTFILE} | mplayer --no-consolecontrols -af scaletempo=scale=1.0:speed=pitch -speed ${FREQ_FACTOR} -
echo "Pronunciato con mplayer e salvato su ${DESTFILE}. Pitch modificato di ${FREQ_FACTOR}"