Skip to main content

Text-to-speech synthesis using the Google Translate TTS API and pygame.

Project description

About

A lightweight fork of the google_speech library, that replaces sox with pygame and removes sound effects for a lightweight and straightforward implementation.

Table of Contents

Installation

You can install the google_speech_pyplay library in multiple ways, depending on your needs.

Install the Latest Version Directly from GitHub

If you want to get the latest development version of the library (from the main branch) directly from GitHub, use:

pip install git+https://github.com/KarimAziev/google_speech_pyplay.git@main#egg=google_speech_pyplay

Example: requirements.txt

Add this line to your requirements.txt to always install the latest version:

git+https://github.com/KarimAziev/google_speech_pyplay.git@main#egg=google_speech_pyplay

Install a Specific Tag (Versioned Release)

If you want to install a specific release version of the library (e.g., v1.0.1), you can reference that tag from GitHub:

pip install git+https://github.com/KarimAziev/google_speech_pyplay.git@v1.0.1#egg=google_speech_pyplay

Example: requirements.txt

To lock the installation to a specific version (e.g., v1.0.1):

git+https://github.com/KarimAziev/google_speech_pyplay.git@v1.0.1#egg=google_speech_pyplay

Usage

The library provides both a Command-Line Interface (CLI) and an API for programmatic use.

Command-Line Interface (CLI)

You can use the google_speech_pyplay command directly from the terminal:

python -m google_speech_pyplay "Hello, world!" -l en

Options:

  • -l, --lang: Specify the language (e.g., en for English, es for Spanish).
  • -o, --output: Save the speech output to an MP3 file instead of playing it.

Example: Save to File

Save the text-to-speech output to output.mp3:

python -m google_speech_pyplay "Hello, world!" -l en -o output.mp3

Python Code Examples

Here are some examples of how to use the library in Python scripts.

Example 1: Play Text-to-Speech

from google_speech_pyplay import Speech

# Specify the text and language
text = "Hello, world!"
language = "en"

# Create a Speech object and play the text
speech = Speech(text, language)
speech.play()

Example 2: Save Speech to a File

from google_speech_pyplay import Speech

# Specify the text and language
text = "Hola, mundo!"
language = "es"

# Create a Speech object and save the speech to an MP3 file
speech = Speech(text, language)
speech.save("output.mp3")

Setting Up Development Environment

To set up a fresh development environment for the google_speech_pyplay project, follow these steps:

Prerequisites

  1. Ensure you have Python 3.10 or newer installed.
  2. Install pip (comes bundled with Python) and upgrade it to the latest version:
    python3 -m pip install --upgrade pip
    

Steps to Set Up the Environment

  1. Clone the repository:

    git clone https://github.com/KarimAziev/google_speech_pyplay.git
    cd google_speech_pyplay
    
  2. Create and activate a virtual environment:

    python3 -m venv .venv
    source .venv/bin/activate  # For Linux/Mac
    # or
    .venv\Scripts\activate     # On Windows
    
  3. Upgrade core tools inside the virtual environment:

    pip install --upgrade pip setuptools wheel
    
  4. Install the project in editable (development) mode with all dependencies:

    pip install -e ".[dev]"  # Includes dev dependencies like black, pre-commit, isort
    

Building the Project

To build the project for distribution, e.g., creating .tar.gz and .whl files:

  1. Install the build tool:

    pip install build
    
  2. Build the distribution:

    python -m build
    

This will generate a dist/ directory containing the following artifacts:

  • Source distribution (google_speech_pyplay-x.y.z.tar.gz)
  • Wheel file (google_speech_pyplay-x.y.z-py3-none-any.whl)

You can install these locally for testing or upload them to PyPI for publishing.


Common Commands

  • Clean build artifacts:
    rm -rf build dist *.egg-info
    
  • Deactivate virtual environment:
    deactivate
    

Notes

  • This project uses setuptools_scm to handle versioning, based on the Git tags of the repository. Ensure you use proper semver tags like v1.0.0 to manage versions correctly.
  • Dev dependencies (like black, isort) are automatically installed when running pip install -e ".[dev]".

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

google_speech_pyplay-1.0.12.tar.gz (29.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

google_speech_pyplay-1.0.12-py3-none-any.whl (25.9 kB view details)

Uploaded Python 3

File details

Details for the file google_speech_pyplay-1.0.12.tar.gz.

File metadata

  • Download URL: google_speech_pyplay-1.0.12.tar.gz
  • Upload date:
  • Size: 29.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.11

File hashes

Hashes for google_speech_pyplay-1.0.12.tar.gz
Algorithm Hash digest
SHA256 045f8abd8cf3f9fd938294577ffa8f795fa2d83f2360ba543e2866101181d7a8
MD5 61691f50b9adf85694b2ab42d45d54ea
BLAKE2b-256 b8c00b6fe179eefb5093062545b737eab08d669c0ffa30d66ca9e3c61e761910

See more details on using hashes here.

File details

Details for the file google_speech_pyplay-1.0.12-py3-none-any.whl.

File metadata

File hashes

Hashes for google_speech_pyplay-1.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 0003baa7de235cf964bce3163f32ed1e317fcb88848fd00b85410b669f103820
MD5 bc5ab4008051f9a2dc4e853da5f4de33
BLAKE2b-256 8109f33d1dfe64b241406089ceca478e7f1e2264fe6b2be3fb941ef26562af49

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page