Easily create Piper text-to-speech models in any voice. Make a text-to-speech model with your own voice recordings, or use thousands of RVC voices. Works offline on a Raspberry pi. Rapidly record custom datasets for any metadata.csv file and listen to your model as it is training.
Shell
721
470 commits
updated Apr 7, 2025
download_defaults.sh now can use a generic language pack to download checkpoints that can be used as the starting point for training voices in any language. This option may exchange a bit of voice quality for convenience, but it will make it easier for new users to get started.low quality pretrained checkpoints available on huggingface right now. This means that only medium and high quality voices will be able to be built from downloaded pretrained checkpoint files. You can still train a low quality model from scratch and use one of its checkpoints as a pretrained checkpoint for future models.run_training.sh now offers to save any unsaved checkpoint found in training_folder before wiping it, which will make it easier to resume dojos if they crash due to insufficient memory.piper_training.sh now correctly applies the quality parameter.download_defaults.sh to handle .ckpt files that have non-conforming filenames.download_defaults.sh now uses heuristics to rename checkpoint files that do not have the required epoch=1000-step=3493434.ckpt filename format..conf file are now listed when the script is finished.training_folder.piper_phonemize had a second set of rules that it was using for preprocessing instead. container_apply_custom_rules.sh has been updated to correct this issue..conf files for downloading pretrained checkpoints in languages other than English!espeak-ng that were missing from create_dataset.sh and espeak_language_identifiers.txt due to a truncated list being supplied when ChatGPT reformatted the markdown table.Settings > Voice Assistants if fields set in the .onnx.json file differed even slightly from what was expected.en_US-bob_1234-medium.onnx).onnx.json files now have fields set correctly when exportedtts_dojo/tts_voices usable in Home Assistant without modifications.run_training.sh.create_datasets.sh now stores the espeak-ng language identifier in dataset.conf so that there is no need to manually set a language during preprocessing.dataset.conf.create_datasets.sh <dataset_folder>DATASETS/espeak_language_identifiers.txt provides clear directions about which language codes to use when setting up a dataset.main is now the non-containerized branch. It will be kept around for reference purposes but will not be maintained.t. This layout will be applied automatically on subsequent runs.tts_dojo/ESPEAK_RULES. These can be applied automatically whenever the textymcspeechy-piper container launches via ESPEAK_RULES/automated_espeak_rules.sh.Read the quick start guide to learn how to build datasets and train models.
nvidia-smi. If something like the image below shows up, you may be able to skip to step 3
docker --version. If it is installed skip to step 5.git clone https://github.com/domesticatedviking/TextyMcSpeechy
TextyMcSpeechy directory, runsudo bash setup.sh
run_container.sh script or start to train a model. Take note that it's a 6GB download and over 10GB when decompressed.docker image pull domesticatedviking/textymcspeechy-piper:latest
Dockerfile and docker-compose.yml in the main TextyMcSpeechy directory, change to that directory and run:docker compose build
Scripts are provided for launching the textymcspeechy-piper image, whether it is prebuilt or locally built.
local_container_run.sh launches images you have built yourself with Dockerfile and docker-compose.ymlprebuilt_container_run.sh launches a prebuilt image.run_container.sh is a script that functions as an alias to one of the scripts above. It is called by run_training.sh to automatically bring the container up when training starts.stop_container.sh will shut down the textymcspeechy-piper container if it is running.Custom espeak-ng pronunciation rules can be defined in tts_dojo/ESPEAK_RULES. A guide for customizing pronunciation can be found here.
811 followers · starred May 2024
186 followers · starred Feb 2025
192 followers · starred Oct 2024
30 followers · starred Feb 2025
Easily create Piper text-to-speech models in any voice. Make a text-to-speech model with your own voice recordings, or use thousands of RVC voices. Works offline on a Raspberry pi. Rapidly record custom datasets for any metadata.csv file and listen to your model as it is training.
Shell
721
470 commits
updated Apr 7, 2025
download_defaults.sh now can use a generic language pack to download checkpoints that can be used as the starting point for training voices in any language. This option may exchange a bit of voice quality for convenience, but it will make it easier for new users to get started.low quality pretrained checkpoints available on huggingface right now. This means that only medium and high quality voices will be able to be built from downloaded pretrained checkpoint files. You can still train a low quality model from scratch and use one of its checkpoints as a pretrained checkpoint for future models.run_training.sh now offers to save any unsaved checkpoint found in training_folder before wiping it, which will make it easier to resume dojos if they crash due to insufficient memory.piper_training.sh now correctly applies the quality parameter.download_defaults.sh to handle .ckpt files that have non-conforming filenames.download_defaults.sh now uses heuristics to rename checkpoint files that do not have the required epoch=1000-step=3493434.ckpt filename format..conf file are now listed when the script is finished.training_folder.piper_phonemize had a second set of rules that it was using for preprocessing instead. container_apply_custom_rules.sh has been updated to correct this issue..conf files for downloading pretrained checkpoints in languages other than English!espeak-ng that were missing from create_dataset.sh and espeak_language_identifiers.txt due to a truncated list being supplied when ChatGPT reformatted the markdown table.Settings > Voice Assistants if fields set in the .onnx.json file differed even slightly from what was expected.en_US-bob_1234-medium.onnx).onnx.json files now have fields set correctly when exportedtts_dojo/tts_voices usable in Home Assistant without modifications.run_training.sh.create_datasets.sh now stores the espeak-ng language identifier in dataset.conf so that there is no need to manually set a language during preprocessing.dataset.conf.create_datasets.sh <dataset_folder>DATASETS/espeak_language_identifiers.txt provides clear directions about which language codes to use when setting up a dataset.main is now the non-containerized branch. It will be kept around for reference purposes but will not be maintained.t. This layout will be applied automatically on subsequent runs.tts_dojo/ESPEAK_RULES. These can be applied automatically whenever the textymcspeechy-piper container launches via ESPEAK_RULES/automated_espeak_rules.sh.Read the quick start guide to learn how to build datasets and train models.
nvidia-smi. If something like the image below shows up, you may be able to skip to step 3
docker --version. If it is installed skip to step 5.git clone https://github.com/domesticatedviking/TextyMcSpeechy
TextyMcSpeechy directory, runsudo bash setup.sh
run_container.sh script or start to train a model. Take note that it's a 6GB download and over 10GB when decompressed.docker image pull domesticatedviking/textymcspeechy-piper:latest
Dockerfile and docker-compose.yml in the main TextyMcSpeechy directory, change to that directory and run:docker compose build
Scripts are provided for launching the textymcspeechy-piper image, whether it is prebuilt or locally built.
local_container_run.sh launches images you have built yourself with Dockerfile and docker-compose.ymlprebuilt_container_run.sh launches a prebuilt image.run_container.sh is a script that functions as an alias to one of the scripts above. It is called by run_training.sh to automatically bring the container up when training starts.stop_container.sh will shut down the textymcspeechy-piper container if it is running.Custom espeak-ng pronunciation rules can be defined in tts_dojo/ESPEAK_RULES. A guide for customizing pronunciation can be found here.
811 followers · starred May 2024
186 followers · starred Feb 2025
192 followers · starred Oct 2024
30 followers · starred Feb 2025