Mimic 3 is a neural text to speech engine that can run locally, even on low-end hardware like the Raspberry Pi 4. The software speaks over 25 languages with over 100 pre-trained voices. Mimic 3 uses VITS, a “Conditional Variational Autoencoder with Adversarial Learning for End-to-End Text-to-Speech”.
Mimic 3 is free and open source software.
Let’s take you through the installation steps first before demonstrating the software.
Installation
We tested the software on Ubuntu 22.10. We prefer installing software with the source code although there are packages available for Ubuntu/Debian.
We first install the python3.10-venv package. The venv module supports creating lightweight “virtual environments”, each with their own independent set of Python packages.
$ sudo apt install python3.10-venv
Reading package lists... Done Building dependency tree... Done Reading state information... Done The following additional packages will be installed: python3-pip-whl python3-setuptools-whl The following NEW packages will be installed python3-pip-whl python3-setuptools-whl python3.10-venv 0 to upgrade, 3 to newly install, 0 to remove and 0 not to upgrade. Need to get 2,429 kB of archives. After this operation, 2,841 kB of additional disk space will be used. Do you want to continue? [Y/n]
Next, clone the GitHub repository with the command:
$ git clone https://github.com/MycroftAI/mimic3
Change into the newly created mimic3 directory.
$ cd mimic3
Run the install.sh script
$ ./install.sh
This script downloads and installs all the necessary Python dependencies in a virtual environment.
Successfully installed Babel-2.11.0 PyYaml-6.0 aiofiles-22.1.0 blinker-1.5 certifi-2022.9.24 charset-normalizer-2.1.1 click-8.1.3 coloredlogs-15.0.1 dataclasses-json-0.5.7 dateparser-1.1.3 docopt-0.6.2 editdistance-0.6.1 epitran-1.17 espeak-phonemizer-1.1.0 flatbuffers-22.10.26 gruut-2.3.4 gruut-ipa-0.13.0 gruut_lang_de-2.0.0 gruut_lang_en-2.0.0 gruut_lang_es-2.0.0 gruut_lang_fa-2.0.0 gruut_lang_fr-2.0.2 gruut_lang_it-2.0.0 gruut_lang_nl-2.0.2 gruut_lang_ru-2.0.0 gruut_lang_sw-2.0.0 h11-0.14.0 h2-4.1.0 hazm-0.7.0 hpack-4.0.0 humanfriendly-10.0 hypercorn-0.14.3 hyperframe-6.0.1 idna-3.4 itsdangerous-2.1.2 jinja2-3.1.2 jsonlines-1.2.0 libwapiti-0.2.1 marisa-trie-0.7.8 markupsafe-2.1.1 marshmallow-3.19.0 marshmallow-enum-1.5.1 mpmath-1.2.1 munkres-1.1.4 mycroft-mimic3-tts-0.2.5 mypy-extensions-0.4.3 networkx-2.8.8 nltk-3.3 num2words-0.6.0 numpy-1.23.4 onnxruntime-1.13.1 packaging-21.3 panphon-0.20.0 phonemes2ids-1.2.2 priority-2.0.0 protobuf-4.21.9 pyparsing-3.0.9 python-crfsuite-0.9.8 python-dateutil-2.8.2 pytz-2022.6 pytz-deprecation-shim-0.1.0.post0 quart-0.18.3 quart-cors-0.5.0 regex-2022.3.2 requests-2.28.1 six-1.16.0 swagger-ui-py-21.12.8 sympy-1.11.1 toml-0.10.2 tqdm-4.64.1 typing-extensions-4.4.0 typing-inspect-0.8.0 tzdata-2022.6 tzlocal-4.2 unicodecsv-0.14.1 urllib3-1.26.12 werkzeug-2.2.2 wsproto-1.2.0 xdgenvpy-2.3.5 ~/mimic3 OK
There’s also a pre-built Docker image available for Intel/AMD CPus and 32/64-bit ARM. The software can also be installed with pip, a cross-platform package manager.
Next page: Page 2 – In Operation
Pages in this article:
Page 1 – Introduction / Installation
Page 2 – In Operation / Summary
I am impressed by this. Thank you