jmes-tts
Generate audio books from text documents
Installation
pip install jmes-tts
Development
This project requires Python 3.12 and uses uv to manage dependencies.
You can create a virtual environment with all the necessary dependencies by running:
uv sync --all-extras --dev
This will install all necessary dependencies and install this project in editable mode.
You can activate the venv with:
. .venv/bin/activate
Testing
Poe the Poet is the task runner
used for this project, it's automatically installed as part of the
dev dependencies. To see a list of available tasks, run the
poe command with no args.
To run the tests for this project run:
poe test
Before submitting a PR, ensure the prcheck task runs successfully:
poe prcheck
Usage
The jmes-tts command is the main interface for converting text to speech.
It offers several options to customize the conversion process.
Basic Usage
jmes-tts --text "Hello, world!" --output hello.mp3
This will convert the text "Hello, world!" to speech and save it as "hello.mp3".
Command Options
--filename: Input file to convert to speech--text: Text to convert to speech--bucket: S3 bucket for long-form text (optional)--output: Output audio file (default: output.mp3)--language: Language of phrase (default: english)--language-code: Language code override (optional)--voice: Voice to use for text-to-speech (optional)--engine: TTS engine (optional)--list-languages: List language presets and Polly language codes
Supported --language values:
english(default)frenchspanishcantonesemandarin
Run jmes-tts --list-languages to see all presets and the full list of
supported language codes.
Converting a File
For longer texts, you can specify an S3 bucket and the path to a local file:
jmes-tts --filename long_text.txt --bucket my-s3-bucket --output long_audio.mp3
Notes
- You must provide either
--filenameor--text, but not both. - If your text is larger than 3000 (billable) characters, you need to provide
the
--bucketargument. Otherwise synchronous TTS will be used. - If no output file is specified, the audio will be saved as
output.mp3in the current directory.
Metadata
Release files for jmes-tts 0.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| jmes_tts-0.0.2.tar.gz | 54.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| jmes_tts-0.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 66.3 kB
Release files / jmes_tts-0.0.2.tar.gz
| Download URL | jmes_tts-0.0.2.tar.gz |
|---|---|
| Size | 54.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7049c4e93ad4898f70f28e59bf00202a05e042b355448c11e4959284f6840cf9
|
|
BLAKE2b-256 checksum How to use checksums |
80816ef0b07bbd2f55dbe6785ed9e51523f54947e4271335f910a9629289c86b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 21, 2026.
Transparency logRelease files / jmes_tts-0.0.2-py3-none-any.whl
| Download URL | jmes_tts-0.0.2-py3-none-any.whl |
|---|---|
| Size | 12.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
20e0da750d8d04ca81bd1eca6e4dcba1694f020daf384f523d94e609a39fd3e5
|
|
BLAKE2b-256 checksum How to use checksums |
9225bdf90d4ccfebbf831eae1c9bd72ed18324df9802ed5f9715dcea087cb423
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 21, 2026.
Transparency log