Skip to main content

A package to make kokoro simpler to work with

Project description

SimplerKokoro

SimplerKokoro

Effortless speech synthesis with Kokoro, in Python.
PyPI - Python Version PyPI - Version GitHub last commit PyPI - License

View on PyPI

📚 Table of Contents

✨ Features

  • Simple interface for generating speech audio and subtitles
  • Supports all Kokoro voices
  • Outputs valid SRT subtitles
  • Automatic Model Management

🚀 Installation

From PyPI:

pip install Simpler-Kokoro

Or clone the repo and install locally:

git clone https://github.com/WilleIshere/SimplerKokoro.git
cd SimplerKokoro
pip install .

🏗️ Build from Source

To build the package from source:

git clone https://github.com/WilleIshere/SimplerKokoro.git
cd SimplerKokoro
pip install build
python -m build

This will create distribution files in the dist/ directory:

  • .whl (wheel) file for pip installation
  • .tar.gz source archive

To install the built wheel locally:

pip install dist/Simpler_Kokoro-*.whl

You can now use the package as described in the usage section.


📦 Requirements

  • Python 3.10+
  • torch
  • kokoro
  • soundfile

All dependencies except Python are installed automatically.

🧑‍💻 Examples

You can find runnable example scripts in the examples/ folder:


🛠️ Usage

Basic Example
from Simpler_Kokoro import SimplerKokoro

# Create an instance
sk = SimplerKokoro()

# List available voices
voices = sk.list_voices()
print("Available voices:", [v['name'] for v in voices])

# Generate speech
sk.generate(
    text="Hello, this is a test of the Simpler Kokoro voice synthesis.",
    voice=voices[0]['name'],
    output_path="output.wav"
)
Generate Speech with Subtitles
sk.generate(
    text="Hello, this is a test. This is another sentence.",
    voice=voices[0]['name'],
    output_path="output.wav",
    write_subtitles=True,
    subtitles_path="output.srt",
    subtititles_word_level=True
)
Generate Speech with Custom Speed
sk.generate(
    text="This is spoken faster than normal.",
    voice=voices[1]['name'],
    output_path="fast_output.wav",
    speed=1.5
)
Specify a Path to Download Models
sk.generate(
    models_dir="Folder-to-put-models-in",
    text="Thats a cool model directory.",
    voice=voices[1]['name'],
    output_path="fast_output.wav",
)

📂 Example Output Files

  • output.wav: The synthesized speech audio file.
  • output.srt: Subtitles in SRT format (if write_subtitles=True).
Sample SRT output
1
00:00:00,000 --> 00:00:01,200
Hello,

2
00:00:01,200 --> 00:00:02,500
this is a test.

3
00:00:02,500 --> 00:00:04,000
This is another sentence.

📖 API

SimplerKokoro

Methods

  • list_voices(): Returns a list of available voices with metadata.
  • generate(text, voice, output_path, speed=1.0, write_subtitles=False, subtitles_path='subtitles.srt', subtititles_word_level=False): Generates speech audio and optional subtitles.

📄 License

This project is licensed under the GPL-3.0 license.


⭐ Star History

Star History Chart

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

simpler_kokoro-1.1.5.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

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

simpler_kokoro-1.1.5-py3-none-any.whl (18.9 kB view details)

Uploaded Python 3

File details

Details for the file simpler_kokoro-1.1.5.tar.gz.

File metadata

  • Download URL: simpler_kokoro-1.1.5.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for simpler_kokoro-1.1.5.tar.gz
Algorithm Hash digest
SHA256 8f9a96ffe787d173bb8bd7ae734e550a56dd0a6f4c68764653b4babe1d913848
MD5 b9a865e489b88fb14566054386b7747b
BLAKE2b-256 177474325953ca27b4331db33b58183a1e6759755f3594fefdff93a6d79bb4dd

See more details on using hashes here.

File details

Details for the file simpler_kokoro-1.1.5-py3-none-any.whl.

File metadata

  • Download URL: simpler_kokoro-1.1.5-py3-none-any.whl
  • Upload date:
  • Size: 18.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for simpler_kokoro-1.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 7157f38b3242a4df6d4de59f272665e523ead1d01a07aa3b3579f8cde4a312a4
MD5 784acd4da34e9c244d4dedb03c10856b
BLAKE2b-256 e37c603376c5d912bf22981ecfbd76350c388a3483e68fe4817220783a3ef235

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