mimic3/mimic3-http
2022-04-23 17:39:38 -04:00
..
img Fix again 2022-03-31 23:12:42 -04:00
mimic3_http Get Docker-based dist build to work 2022-04-23 17:39:38 -04:00
.gitignore Clean up HTTP server 2022-03-25 16:57:06 -04:00
.isort.cfg Initial commit 2022-03-16 17:22:15 -04:00
.projectile Initial commit 2022-03-16 17:22:15 -04:00
check.sh Add remaining scripts to Debian package 2022-04-11 10:33:43 -04:00
client.sh speechd-dispatcher example 2022-03-22 15:45:36 -04:00
LICENSE Clean up HTTP server 2022-03-25 16:57:06 -04:00
MANIFEST.in Add OpenAPI page 2022-03-31 15:46:10 -04:00
mypy.ini Merge mimic3-client into main CLI 2022-04-11 14:50:48 -04:00
py.typed Add missing py.typed files 2022-04-21 17:30:43 -04:00
pylintrc Clean up HTTP server 2022-03-25 16:57:06 -04:00
README.md Merge mimic3-client into main CLI 2022-04-11 14:50:48 -04:00
requirements.txt Merge mimic3-client into main CLI 2022-04-11 14:50:48 -04:00
run.sh Add remaining scripts to Debian package 2022-04-11 10:33:43 -04:00
setup.cfg Clean up HTTP server 2022-03-25 16:57:06 -04:00
setup.py Merge mimic3-client into main CLI 2022-04-11 14:50:48 -04:00

Mimic 3 Web Server

A small HTTP web server for the Mimic 3 text to speech system.

Available voices

screenshot of web interface

Running the Server

mimic3-server

This will start a web server at http://localhost:59125

See mimic3-server --debug for more options.

Endpoints

  • /api/tts
    • POST text or SSML and receive WAV audio back
    • Use ?voice= to select a different voice/speaker
    • Set Content-Type to application/ssml+xml (or use ?ssml=1) for SSML input
  • /api/voices
    • Returns a JSON list of available voices

An OpenAPI test page is also available at http://localhost:59125/openapi

CUDA Acceleration

If you have a GPU with support for CUDA, you can accelerate synthesis with the --cuda flag. This requires you to install the onnxruntime-gpu Python package.

Using nvidia-docker is highly recommended. See the Dockerfile.gpu file in the parent repository for an example of how to build a compatible container.

Running the Client

Assuming you have started mimic3-server and can access http://localhost:59125, then:

mimic3 --remote --voice 'en_UK/apope_low' 'My hovercraft is full of eels.' > hovercraft_eels.wav

If your server is somewhere besides localhost, use mimic3 --remote <URL> ...

See mimic3 --help for more options.

MaryTTS Compatibility

Use the Mimic 3 web server as a drop-in replacement for MaryTTS, for example with Home Assistant.

Make sure to use a compatible voice key like en_UK/apope_low.