EveryVoice TTS Toolkit 💬
This is the Text-to-Speech (TTS) toolkit used by the Small Teams "Speech Generation for Indigenous Language Education" project.
Quickstart from PyPI
-
Install Python 3.10, 3.11, or 3.12 and create a venv or a conda env for EveryVoice.
-
Install
sox.- On Ubuntu,
sudo apt-get install soxshould work. - Other Linux distros should have equivalent packages.
- With Conda,
conda install sox -c conda-forgeis reliable.
- On Ubuntu,
-
Install
ffmpeg:- On Ubuntu,
sudo apt-get install ffmpegshould work. - Other Linux distros should have an equivalent package.
- With Conda,
conda install ffmpegis reliable. - Or, use the applicable link under "Get packages & executables files" at https://www.ffmpeg.org/download.html
- On Ubuntu,
-
Install
torchandtorchaudioversion 2.1.0 for your platform and CUDA version: follow the instructions at https://pytorch.org/get-started/locally/ but specifytorch==2.1.0 torchaudio==2.1.0in the install command and removetorchvision. -
Run
pip install everyvoice
Quickstart from source
Install conda
First, you'll need to install conda. Miniforge3 is a fully open-source option which is free for all users and works well. You can also use Anaconda3 or Miniconda3 if you have or can get a license.
Clone the repo
git clone https://github.com/EveryVoiceTTS/EveryVoice.git
cd EveryVoice
git submodule update --init
Environment and installation – automated
To run EveryVoice, you need to create a new environment using Conda and Python 3.12, install all our dependencies and EveryVoice itself.
We have automated the procedure required to do all this in the script make-everyvoice-env, which you can run like this:
./make-everyvoice-env --path <env-path-of-your-choice>
conda activate <env-path-of-your-choice>
Add the option --cuda CUDA_VERSION if you need to override the default CUDA version, or --cpu to use Torch compiled for CPU use only.
Environment and installation – manual
If the automated installation process does not work for you, or if you prefer to do the full installation manually, please refer to EveryVoice / Installation.
Documentation
Read the full EveryVoice documentation.
In particular, read the Guides to get familiar with the whole process.
To build and view the documentation locally:
pip install -e '.[docs]'
mkdocs serve
and browse to http://127.0.0.1:8000/.
Contributing
Feel free to dive in! Open an issue or submit PRs.
This repo follows the Contributor Covenant Code of Conduct.
Please make sure our standard Git hooks are activated, by running these commands in your sandbox (if you used our make-everyvoice-env script then this step is already done for you):
pip install -e '.[dev]'
prek install
gitlint install-hook
git submodule foreach 'prek install'
git submodule foreach 'gitlint install-hook'
Have a look at Contributing.md for the full details on the Conventional Commit messages we prefer, our code formatting conventions, our Git hooks, and recommendations on how to make effective pull requests.
Acknowledgements
This repository draws on many other wonderful code bases. Many thanks to:
- https://github.com/nocotan/pytorch-lightning-gans
- https://github.com/rishikksh20/iSTFTNet-pytorch
- https://github.com/jik876/hifi-gan
- https://github.com/ming024/FastSpeech2
- https://github.com/MiniXC/LightningFastSpeech2
- https://github.com/DigitalPhonetics/IMS-Toucan
Tests
We use pytest to manage unit tests.
- Run all the tests:
pytest; add-vto list tests cases,-sto see all logs,--coto list tests without running them - Run the tests in one file:
pytest everyvoice/tests/test_<file_name>.py - Run one test case:
pytest everyvoice/tests/test_<file_name>.py::<class_name>::<function_name>
Metadata
Release files for EveryVoice 0.5.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| everyvoice-0.5.0.tar.gz | 267.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| everyvoice-0.5.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 609.9 kB
Release files / everyvoice-0.5.0.tar.gz
| Download URL | everyvoice-0.5.0.tar.gz |
|---|---|
| Size | 267.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b03e8a31fe395b20f1c18951dd085bef33e3c675d1efb21ffeff7d50f4fe3c36
|
|
BLAKE2b-256 checksum How to use checksums |
d75c2fa4d18aec8ccf92b83da6f5d2bf4a2e6627314c2259050a9ff55df66758
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 1, 2026.
Transparency logRelease files / everyvoice-0.5.0-py3-none-any.whl
| Download URL | everyvoice-0.5.0-py3-none-any.whl |
|---|---|
| Size | 342.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bcd91a05eaadbd66e251c564f58cd05822c46acefe72d80170f6779ddc4f262f
|
|
BLAKE2b-256 checksum How to use checksums |
636a73d2681f265c854d68c6e602a5499cf016507775da12aa6874be8987e28f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 1, 2026.
Transparency log