Neural network based TTS Engine.
Forked by ben
(:github: @benediktkr
) from
github:VRCWizard/glados-tts-voice-wizard
,
which in turn was a fork of
github:R2D2FISH/glados-tts
.
This fork modernizes and improves the Python code in the project and does a bunch of housekeeping.
[DONE]
: Gets rid of theSciPy
dependency (replaced with the more modern and lightwightpysoundfile
(since all it was used for was writing a.wav
file to disk)[DONE]
: Support modern stable Python 3 versions, and update dependencies.[DONE]
: Versioned packages withpoetry
andpyproject.toml
[DONE]
: Configuration handling withclick
.[DONE]
: Better logging withloguru
[DONE]
: Python coding style and code quality improvements (proper handling offile
object, improved logging..)[DONE]
: Switch to using ASGI withuvicorn
andfastapi
instead of Flask and WSGI, and support production-capable deployments as default.[DONE]
: Docker support[TODO]
: Support Home Assistant through thenotify
integration[TODO]
: see if its possible to avoidespeak-ng
as a system package dependency (python bindings, buliding the C library, etc)
No work on the speech model itself is expected.
The initial, regular Tacotron model was trained first on LJSpeech, and then on a heavily modified version of the Ellen McClain dataset (all non-Portal 2 voice lines removed, punctuation added).
- The Forward Tacotron model was only trained on about 600 voice lines.
- The HiFiGAN model was generated through transfer learning from the sample.
- All models have been optimized and quantized.
First you need to install the espeak-ng
system
packages.
# for debian/ubuntu:
sudo apt-get install espeak-ng
# for fedora/amazon:
sudo yum install espeak-ng
This can hopefully be improved in the future. There is a Python
bindings for espeak
(at a glance, found
py-espeak-ng
).
Then install the poetry-managed virtualenv
poetry install
If you want to just play around with the TTS, works on the shell:
poetry run gladosctl
The TTS engine can also run as a web server:
poetry run gladosctl restapi
A public instance of the http api is running at http://www.sudo.is/api/glados
, where you can also read api documentation.