mixertts-ljspeech-80
A MixerTTS model by nipponjo, from github.com/nipponjo/mixer-tts-pytorch, packaged for phoonnx, our ONNX text-to-speech library.
Model details
| Architecture | MixerTTS |
| Upstream | github.com/nipponjo/mixer-tts-pytorch |
| Author | nipponjo |
| Languages | en-US |
| Text input | espeak phonemes, IPA alphabet |
| Vocoder | vocoders-vocos-mel-22khz-univ |
How to use
pip install --pre phoonnx
The phonemes come from the espeak-ng program, so install it too (for example
apt install espeak-ng). Without it, pip install --pre "phoonnx[espeak]" gives
phoonnx the espyak port of espeak-ng. Some espyak phonemes differ from those of
espeak-ng, so the voice can say some words wrong with espyak.
import wave
from phoonnx.model_manager import TTSModelManager
manager = TTSModelManager()
manager.load()
manager.merge_default_voices()
voice = manager.voices["nipponjo/mixer-tts-ljspeech-80"].load()
with wave.open("output.wav", "wb") as wav_file:
text = "..." # a sentence in en-US
voice.synthesize_wav(text, wav_file)
The model makes a spectrogram, and the vocoder in Model details turns it into audio. phoonnx downloads the vocoder with the voice.
In OVOS, phoonnx installs the ovos-tts-plugin-phoonnx plugin. Select the voice in mycroft.conf:
{"tts": {"module": "ovos-tts-plugin-phoonnx", "ovos-tts-plugin-phoonnx": {"voice": "nipponjo/mixer-tts-ljspeech-80"}}}
Text front end
phoonnx hands the text to scriptconv, our text conversion library, which normalises it and turns it into the model's input:
espeak:EspeakPhonemizerfromscriptconv.phonemizers.mul, installed by thescriptconv[espeak]extra.
phoonnx voices
nipponjo/mixer-tts-ljspeech-80
Licence
No licence is recorded for this model. Check the upstream release before you use it.
Related projects
- phoonnx: runs this model, in Python and in OVOS.
- scriptconv: text normalisation, script conversion and phonemizers for phoonnx.
- The MixerTTS collection: every MixerTTS model packaged for phoonnx.
- Downloads last month
- 33