Skip to main content

speak-tts

Voice cloning CLI for Mac (Apple Silicon) using F5-TTS.

Installation

Via Homebrew

brew tap danielsinai/speak-tts
brew install speak-tts

Via pipx

pipx install speak-tts

Via pip

pip install speak-tts

Requirements

  • macOS with Apple Silicon (M1/M2/M3/M4)
  • Python 3.10+

Usage

Add a Voice Profile

speak --add-profile daniel --voice ~/voice.wav --text-file ~/reference.txt

The reference audio should be a clear WAV recording (24kHz) of the voice you want to clone, and the text file should contain an exact transcript.

Generate Speech

Plays audio directly (no file saved):

speak daniel "Hello, this is a test!"

Save to a file:

speak daniel "Hello world" --output ~/Desktop/hello.wav

List Profiles

speak --list

Play Audio

speak --play output.wav

Profile Storage

Profiles stored in ~/.speak/profiles/<name>/ with:

  • reference.wav - Voice sample
  • reference.txt - Transcript

Tips

  • Reference Audio: 5-15 seconds, 24kHz, minimal background noise
  • Reference Text: Exact transcript of the audio
  • First Run: Downloads F5-TTS model (~1GB)

Publishing

1. Publish to PyPI

# Install tools
pip install build twine

# Build and upload
./scripts/publish.sh

Or manually:

python -m build
twine upload dist/*

2. Set up Homebrew Tap

  1. Create a new GitHub repo: homebrew-speak-tts

  2. Copy the formula:

    cp Formula/speak-tts.rb ~/homebrew-speak-tts/
    
  3. Get SHA256 after PyPI upload:

    shasum -a 256 dist/speak_tts-*.tar.gz
    
  4. Update sha256 in the formula, commit, and push

  5. Users install with:

    brew tap YOUR_USERNAME/speak-tts
    brew install speak-tts
    

Development

git clone https://github.com/danielsinai/speak-tts
cd speak-tts
python3 -m venv venv
source venv/bin/activate
pip install -e .
speak --help

License

MIT

Metadata

Release files for speak-tts 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for speak-tts 0.1.0
File Size Uploaded
speak_tts-0.1.0.tar.gz 4.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for speak-tts 0.1.0
File Interpreter ABI Platform
speak_tts-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 9.8 kB

Release files / speak_tts-0.1.0.tar.gz

Download URL speak_tts-0.1.0.tar.gz
Size 4.8 kB
Tags Source
SHA-256 checksum
How to use checksums
d29e116cd2b13204eb3d1c4f0268d477372990ff168cc310756525f033dd9b05
BLAKE2b-256 checksum
How to use checksums
50d7f18f5b1d705ce45063059bb2cd9ebaf28d8366957d28eb98abf30aae2f06
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.3

Release files / speak_tts-0.1.0-py3-none-any.whl

Download URL speak_tts-0.1.0-py3-none-any.whl
Size 5.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cb5db4ef6ce3978dd1f26a08588956d3bf267af242ccb7ee7b9fe410a8ea8322
BLAKE2b-256 checksum
How to use checksums
b7cc4dc18e02a55d82aec720fac26a7ea6df28c56cb9ef968e004b2a0dd4e31f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.3

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page