Orion/rigel
Sameer Rahmani e5953da3d2 Add a readme file for Rigel 2022-04-15 23:35:54 +01:00
..
.models.json Add the Rigel for TTS 2022-04-15 14:35:30 +01:00
README.md Add a readme file for Rigel 2022-04-15 23:35:54 +01:00
__init__.py Add the Rigel for TTS 2022-04-15 14:35:30 +01:00
requirements.txt Finish up the basic Rigel TTS 2022-04-15 16:45:21 +01:00
server.py Finish up the basic Rigel TTS 2022-04-15 16:45:21 +01:00
tcp.py Finish the tcp loop 2022-04-15 23:13:21 +01:00

README.md

Rigel

Rigel is the text to speech part of Orion. I'm too lazy and often ask Rigel to read me the stuff I want to read. Since the voice is AI generated via Coqui's TTS it can be a bit flaky sometimes but you can train it to be better. So far I'm happy with the defaults of Rigel. To know more about how to train it check out how to train a model.

Use Rigel only on your local network IT IS NOT SAFE. You can set the host and port and the MODEL_NAME via the .env file in the parent directory.

In order to use it, first you need to setup the project which you can just call ./builder setup from the parent directory and then run Rigel by using the builder script like:

./builder rigel [path-to-.env-file]

Rigel will listen to the tcp port provided by HOST and PORT vars in .env and converts any text messages that gets into speech on the fly.

The protocol is pretty simple. The packet should start with 32 bit unsigned integer that contains the length of the string that comes after it. That's it. It will reply back with "OK". Also if it get the message "//close" then it will close the connection to that client.

Have Fun!