Skip to main content

Voice cloning CLI for Mac using F5-TTS

Project description

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

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

speak_tts-0.1.0.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

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

speak_tts-0.1.0-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: speak_tts-0.1.0.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for speak_tts-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d29e116cd2b13204eb3d1c4f0268d477372990ff168cc310756525f033dd9b05
MD5 58f3dbfdbe86f7e8dc7ca14f3debb9d8
BLAKE2b-256 50d7f18f5b1d705ce45063059bb2cd9ebaf28d8366957d28eb98abf30aae2f06

See more details on using hashes here.

File details

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

File metadata

  • Download URL: speak_tts-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for speak_tts-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cb5db4ef6ce3978dd1f26a08588956d3bf267af242ccb7ee7b9fe410a8ea8322
MD5 2817595fc6a785c1206d8120dd8d7ed2
BLAKE2b-256 b7cc4dc18e02a55d82aec720fac26a7ea6df28c56cb9ef968e004b2a0dd4e31f

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