No project description provided
Project description
Orpheus CPP
Installation
pip install orpheus-cpp
You also need to install the llama-cpp-python package separately. This is because llama-cpp-python does not ship pre-built wheels on PyPi.
Don't worry, you can just run one of the following commands:
Linux/Windows
pip install llama-cpp-python --extra-index-url https://abetlen.github.io/llama-cpp-python/whl/cpu
MacOS with Apple Silicon
pip install llama-cpp-python --extra-index-url https://abetlen.github.io/llama-cpp-python/whl/metal
Usage
Async FastRTC Demo
After installing orpheus-cpp, install fastrtc and run the following command:
python -m orpheus_cpp
Then go to http://localhost:7860 and you should see the demo.
>
Sync TTS
from orpheus_cpp import OrpheusCpp
from scipy.io.wavfile import write
orpheus = OrpheusCpp()
text = "I really hope the project deadline doesn't get moved up again."
# output is a tuple of (sample_rate (24_000), samples (numpy int16 array))
sample_rate, samples = orpheus.tts(text, options={"voice_id": "tara"})
write("output.wav", sample_rate, samples.squeeze())
Streaming Sync
for sample_rate, samples in orpheus.stream_tts_sync(text, options={"voice_id": "tara"}):
write("output.wav", sample_rate, samples.squeeze())
Streaming Async
async for sample_rate, samples in orpheus.stream_tts(text, options={"voice_id": "tara"}):
write("output.wav", sample_rate, samples.squeeze())
Tips
By default, we wait until 1.5 seconds of audio is generated before yielding the first chunk.
This is to ensure smooth audio streaming at the cost of a longer time to first audio.
Depending on your hardware, you can try to reduce the pre_buffer_size to get a faster time to first chunk.
async for sample_rate, samples in orpheus.stream_tts(text, options={"voice_id": "tara", "pre_buffer_size": 0.5}):
write("output.wav", sample_rate, samples.squeeze())
License
orpheus-cpp is distributed under the terms of the MIT license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file orpheus_cpp-0.0.1.post1-py3-none-any.whl.
File metadata
- Download URL: orpheus_cpp-0.0.1.post1-py3-none-any.whl
- Upload date:
- Size: 8.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
289c0f6b102cf3bb4ad90157821394afb874e6750558d98f8cb1d0abc10d50cb
|
|
| MD5 |
9f63e81cf0726e666b33236d73b4a87d
|
|
| BLAKE2b-256 |
7daae05c61395c526c3b8eab139cc306470fdd2fceb39c566f70c80e646b2a29
|