Skip to main content

VoxCPM TTS model with Apple Neural Engine backend server

Project description

VoxCPMANE

VoxCPM TTS model with Apple Neural Engine (ANE) backend server. CoreML models available in Huggingface repository.

  • 🎤 Voice Cloning: Support for custom voice prompts and cached voices
  • 📡 Streaming Support: Real-time audio streaming for low latency
  • 🎧 Server-side Playback: Direct audio playback on the server
  • 🌐 Web Interface: Interactive playground for testing

Voice Cloning

https://github.com/user-attachments/assets/02ffa400-b2fd-422e-a3ad-a0ea232a55aa

Included Voices Listen samples

https://github.com/user-attachments/assets/28880ed2-2e21-4eb4-b0ce-18a100403e87

Installation

Prerequisites

  • macOS with Apple Silicon for ANE acceleration
  • Python 3.9-3.12
  • uv package manager (recommended)
  • pydub required for audio formats other than wav in /speech endpoint

Install with pip or uv

uv pip install voxcpmane
pip install voxcpmane

The server will start on http://localhost:8000 by default. You can access the web playground at the root URL.

Configuration

Command Line Options

uv run voxcpmane-server --help
  • --host: Host to bind the server to (default: 0.0.0.0)
  • --port: Port to run the server on (default: 8000)
  • --cache-dir: Directory for custom voice caches (default: ~/.cache/ane_tts)

Custom Voices

You can create reusable cached voices in two ways:

  1. Via the Web Playground/API: Use the "Create Voice" tab or POST /v1/voices endpoint.
  2. Startup Compilation: Place pairs of audio files (e.g., .wav, .mp3) and transcriptions (.txt) in the custom cache directory. The server will automatically compile them into voice caches (.npy) on startup.

Example: If you place myvoice.mp3 and myvoice.txt in the cache directory, the server will generate myvoice.npy on start, making "myvoice" available for generation.

API Reference

The full API documentation is available in docs/API.md.

Changelog

Version 0.0.3

  • Added support for creation of custom voices

Roadmap

  • Automatic prompt caching
  • Chunked long audio generation
  • Custom voices

Acknowledgments

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

voxcpmane-0.0.5b1.tar.gz (36.2 kB view details)

Uploaded Source

Built Distribution

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

voxcpmane-0.0.5b1-py3-none-any.whl (33.7 kB view details)

Uploaded Python 3

File details

Details for the file voxcpmane-0.0.5b1.tar.gz.

File metadata

  • Download URL: voxcpmane-0.0.5b1.tar.gz
  • Upload date:
  • Size: 36.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.7

File hashes

Hashes for voxcpmane-0.0.5b1.tar.gz
Algorithm Hash digest
SHA256 7627950a622e408f0c40dc87bae58638f266ba51606b814b8d00baa7279c84e3
MD5 6c561cd7a196f1c9be8006f9e55f4e21
BLAKE2b-256 cd3fdd91688a16c84f434a8860f92db307a54603952c3c9301703d25416e2531

See more details on using hashes here.

File details

Details for the file voxcpmane-0.0.5b1-py3-none-any.whl.

File metadata

File hashes

Hashes for voxcpmane-0.0.5b1-py3-none-any.whl
Algorithm Hash digest
SHA256 0bcab018c471744a50d6f9ec7e6b4854950683285ec3ae4e62e326e8701baaea
MD5 5e3d73b5e92387a9fb37f6fde2890584
BLAKE2b-256 7faeb6b009e34c4b800eb74f12e0bced40c47facfc0a66116c4e567392edcfee

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