desbma / GoogleSpeech

Read text using Google Translate TTS API
GNU Lesser General Public License v2.1
161 stars 37 forks source link

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

Installation

Google Speech requires Python >= 3.7.

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. On Mac: brew install sox. 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

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

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