Skip to main content

A premium CLI tool for Google Cloud Text-to-Speech Chirp 3 HD voices

Project description

🎙️ gcp-chirp

A premium CLI tool for working with Google Cloud Text-to-Speech Chirp 3 HD voices. Chirp 3 HD is a new generation of expressive, high-fidelity voices powered by Google's latest LLMs.

📋 Prerequisites

Before you begin, ensure you have the following installed and configured:

  1. FFmpeg: Required for audio processing.
    # macOS
    brew install ffmpeg
    
  2. Google Cloud Project:
    • Enable the Text-to-Speech API.
    • Set up Application Default Credentials (ADC). Follow the official documentation.
    • Note: You may need to perform a one-time setup for the gcloud CLI:
      gcloud auth application-default login
      

🚀 Features

  • Expressive Synthesis: High-fidelity audio with natural intonation.
  • Voice Listing: Easily list available Chirp 3 HD voices across languages.
  • Modern CLI: Beautiful output powered by rich and typer.
  • Managed by uv: Lightning fast dependency management.

📦 Installation

Via PyPI (Recommended)

This is the easiest way to install the tool globally:

uv tool install gcp-chirp

From Source

If you are developing or want to run it locally:

git clone https://github.com/msampathkumar/gcp-chirp
cd gcp-chirp
uv sync

🗑 Uninstallation

To remove the tool and its local data:

  1. Clean local configuration:
    gcp-chirp uninstall
    
  2. Remove the global tool:
    uv tool uninstall gcp-chirp
    

🔑 Authentication

The tool uses Google Cloud Application Default Credentials (ADC) by default.

  1. ADC (Recommended): Run the following command if you haven't already:
    gcloud auth application-default login
    
  2. Service Account Key: If using a service account JSON:
    export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/key.json"
    
  3. CLI Option: Alternatively, pass the path directly via the --creds option in the say command.

🛠 Usage

🚀 Quick Start (One-time Setup)

Run the setup wizard to check dependencies (FFmpeg, gcloud), configure authentication, and set initial defaults:

uv run gcp-chirp setup

Configuration Precedence

The tool follows a strict precedence for settings:

  1. CLI Flags: (e.g., --project, --voice, --play) always win.
  2. Config File: (~/.gcp-chirp/settings.yaml).
  3. Environment Variables: (e.g., GOOGLE_CLOUD_PROJECT).

⚙️ Configuration Commands

Interactive Setup

Set your default project, voice, and output preferences:

uv run gcp-chirp config

View Current Configuration

uv run gcp-chirp config --show

Reset Configuration

Reset all settings to factory defaults:

uv run gcp-chirp config-reset

📋 Action Commands

List Voices

List available voices for a language (uses default language if omitted):

uv run gcp-chirp list --project my-temporary-project

Synthesize Speech

Convert text to audio with overrides:

uv run gcp-chirp say "Hello, I am synthesized using a specific project and voice!" --voice en-US-Chirp3-HD-Charon --project my-project --play

Note: Files are saved in the configured output_dir with a timestamped filename unless --output is provided.

🏗 Track Status

Managed via conductor/tracks.md.


Built with ❤️ for the Empire.

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

gcp_chirp-0.1.0.tar.gz (40.9 kB view details)

Uploaded Source

Built Distribution

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

gcp_chirp-0.1.0-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file gcp_chirp-0.1.0.tar.gz.

File metadata

  • Download URL: gcp_chirp-0.1.0.tar.gz
  • Upload date:
  • Size: 40.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for gcp_chirp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 145ca52df8f0a3b72990ecc8012b20759f4605e3818c91a07228d4057a842ae3
MD5 e529d5ce1d54938ba12aa1ad413f8fd4
BLAKE2b-256 d59fe602da1bfa73c3d38af246ac665604c6d028181ed7999b03cf9a8b9896a8

See more details on using hashes here.

File details

Details for the file gcp_chirp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: gcp_chirp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for gcp_chirp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1c45d3300fed5de47ea74be99b9c302f697e8b066b71aa1ec8db81bbde3a5cbe
MD5 5a423844cc6c80e49891b5093673bd05
BLAKE2b-256 1dfdaeba6ea09094184e8cefadf705254789d040d7d8085917e31c17dd902f8f

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