Skip to content
Read text using Google Translate TTS API
Python Shell
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
google_speech
tests
.gitignore
.travis.yml
LICENSE
MANIFEST.in
README.md
requirements.txt
setup.py
update-version

README.md

Google Speech

Latest version Tests status Coverage Supported Python versions License

Google Speech is a simple multiplatform command line tool to read text using Google Translate TTS (Text To Speech) API.

Features

  • Support 64 different languages
  • Can read text without length limit
  • Can read text from standard input
  • Automatically pre download the next sentences while playing the current one to avoid long pauses between sentences
  • Automatically store downloaded data in a local cache
  • Can apply any SoX effect to the audio while playing it

Installation

Google Speech requires Python >= 3.4.

From PyPI (with PIP)

  1. If you don't already have it, install pip for Python 3
  2. Install Google Speech: pip3 install google_speech
  3. Install SoX, with MP3 support. On Ubuntu and other Debian derivatives: sudo apt-get install sox libsox-fmt-mp3. Windows users can download binaries on the SoX website, once installed you also need to copy libmad DLL in the directory where you have installed SoX, and to add this directory to your PATH environment variable.

From source

  1. If you don't already have it, install setuptools for Python 3
  2. Clone this repository: git clone https://github.com/desbma/GoogleSpeech
  3. Install Google Speech: python3 setup.py install
  4. Install SoX, with MP3 support. On Ubuntu and other Debian derivatives: sudo apt-get install sox libsox-fmt-mp3. Windows users can download binaries on the SoX website, once installed you also need to copy libmad DLL in the directory where you have installed SoX, and to add this directory to your PATH environment variable.

Command line usage

Run google_speech -h to get full command line reference.

Examples

  • Plane stall alarm:

    google_speech -l en stall -e delay 0.5 overdrive 20 repeat 5 speed 0.9 gain -5

  • Female robot voice (idea from here):

    google_speech -l en "Hello, I am a stupid robot voice" -e speed 0.9 overdrive 10 echo 0.8 0.7 6 0.7 echo 0.8 0.7 10 0.7 echo 0.8 0.7 12 0.7 echo 0.8 0.88 12 0.7 echo 0.8 0.88 30 0.7 echo 0.6 0.6 60 0.7

  • Save to MP3 file : google_speech -l en -o hello.mp3 "Hello Google, greetings from France !"

On Unix systems, with Bash and pipes, you can be creative:

  • Bash greetings:

    google_speech -l en "Hello $USER, it is $(date)"

  • Countdown:

    for i in {10..0}; do ( google_speech $i & ); sleep 1s; done

  • Read a Chuck Norris joke:

    curl -s http://api.icndb.com/jokes/random/ | python3 -c 'import html.parser, json, sys; print(html.parser.HTMLParser().unescape(json.load(sys.stdin)["value"]["joke"]))' | google_speech -

Python usage

You can use google_speech from any Python script or module.

Sample code:

from google_speech import Speech

# say "Hello World"
text = "Hello World"
lang = "en"
speech = Speech(text, lang)
speech.play()

# you can also apply audio effects while playing (using SoX)
# see http://sox.sourceforge.net/sox.html#EFFECTS for full effect documentation
sox_effects = ("speed", "1.5")
speech.play(sox_effects)

# save the speech to an MP3 file (no effect is applied)
speech.save("output.mp3")

License

LGPLv2

You can’t perform that action at this time.