Instructions to use yepher/screen-cut-pro-tts-coreml with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Chatterbox
How to use yepher/screen-cut-pro-tts-coreml with Chatterbox:
# pip install chatterbox-tts import torchaudio as ta from chatterbox.tts import ChatterboxTTS model = ChatterboxTTS.from_pretrained(device="cuda") text = "Ezreal and Jinx teamed up with Ahri, Yasuo, and Teemo to take down the enemy's Nexus in an epic late-game pentakill." wav = model.generate(text) ta.save("test-1.wav", wav, model.sr) # If you want to synthesize with a different voice, specify the audio prompt AUDIO_PROMPT_PATH="YOUR_FILE.wav" wav = model.generate(text, audio_prompt_path=AUDIO_PROMPT_PATH) ta.save("test-2.wav", wav, model.sr) - Notebooks
- Google Colab
- Kaggle
File size: 1,902 Bytes
2765e64 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | Chatterbox TTS — CoreML Port
=============================
This repository contains a CoreML conversion of the Chatterbox TTS model
originally released by Resemble AI.
Upstream
--------
Project: Chatterbox
Author: Resemble AI
Source: https://github.com/resemble-ai/chatterbox
License: MIT (see LICENSE)
Copyright: Copyright (c) 2024 Resemble AI
This port is distributed under the same MIT License. The full upstream
copyright notice and license terms are reproduced verbatim in LICENSE, as
required by the MIT License.
Modifications
-------------
The following changes were made to the original model artifacts to produce
the files in this repository. The modifications cover only the
serialization/inference graph; the trained weights are preserved unchanged.
* Converted PyTorch / ONNX checkpoints to CoreML `.mlpackage` format using
Apple `coremltools`.
* Replaced `complex64` rotary position embeddings (RoPE) inside the s3
tokenizer with split real `(cos, sin)` tensors. CoreML does not support
`complex64`; this rewrite is mathematically equivalent.
* Traced the flow encoder at fixed shapes (400 prompt tokens, 1024 mel
frames). The host application is expected to chunk longer inputs to
these limits.
* Pre-computed and serialized the conditioning tensors for the bundled
default voice (the five `default_*.bin` files) so callers can run
inference without re-running the voice encoder pipeline on every cold
start.
The conversion script (`convert_chatterbox_to_coreml.py`) lives in the host
application's source repository. No model weights were retrained or
fine-tuned; only the serialization format was changed.
Trademarks
----------
"Resemble AI" and "Chatterbox" are referenced here for attribution only and
remain the property of their respective owners. Their inclusion does not
imply endorsement of this port.
|