Whats the best voice for TTS please - most sound similar and one did not work at all (Larynx i think)
Are there and semi human ones available?
Thanks
Whats the best voice for TTS please - most sound similar and one did not work at all (Larynx i think)
Are there and semi human ones available?
Thanks
In my opinion the currently best available voice is the Google Wavenet. However, those are not locally created but in the Google Cloud.
On the second place, at least for me is the Larynx TTS. If this doesnt work for you, check if you are already using Rhasspy 2.5.10 which got rid of the AVX Requirement on the CPU.
To try out the Wavenet:
Listen to the Larynx Voices available in Rhasspy:
Thanks,
any idea how i get Larynx to function??
currently its set on en-kathleen but i have no idea what goes in the âvoiceâ area and it just hangs when tested, leaving the LEDS on 100% plus a timeout error.
I really dont want to use any external resources
In french, the best ratio cpu/quality is nano tts. Itâs takes no time to be generated on a raspberry 3, and itâs ok.
Larynx is great, but it takes 30s to generate the audio file (and it has some strange pronunciation for some words )
Interesting thanks, thats a lot of overhead and not really workable for a pi i think then
Did you install rhasspy from source ? To test Larynx, you can run something like
/path/to/rhasspy/.venv/bin/python3 -m larynx.server --voices-dir /home/pi/.config/rhasspy/profiles/fr/tts/larynx
(you need to change fr by your profile name)
For me itâs Google Wavenet. The Larynx is my best when you do not want anything generated by cloud services.
Google Wavenet only generated the audio once per sentence and plays from cache when the same sentence is spoken.
Thanks all, iâll try some of these as soon as i can get some time on it again. Its on nano.tts at the moment and thats pretty good.
There are many high quality TTS to even singing ones https://nv-adlr.github.io/Mellotron
The challenge is to make them lite weight where the likes of larynx or https://github.com/TensorSpeech/TensorFlowTTS make a fairly good job but for myself there is nothing good about any cloud service.
It more about what hardware you can use locally than what you can use remotely and if you are just using a Pi then Larynx or TensorflowTTS on a Pi4 is prob best you will get currently.
Thanks, iâll try Larynx again soon
Iâm hoping we can fix these as time goes on. Luckily, it shouldnât require re-training the model, just re-ordering the pronunciation dictionary so the correct pronunciation is picked.
For English, I use part-of-speech and tense to determine pronunciation â for example âI read (RED) the bookâ versus âI read (REED) booksâ. Would this be helpful in French too?
I just open a pull request on gruut. I inverted the ordering. What do you think about ?
In french, I did some tests and it improve pronunciation for many words.
Iâm re-ordering the lexicon according to pronunciation frequencies from the French Kaldi model I trained. Once I roll this update into Rhasspy, Iâll see what you think
@tjiho, could you also provide some feedback on this discussion regarding liasons in French please? https://github.com/rhasspy/larynx/issues/7
Tested Layrnx and able to confirm that the cmu_slp and cmu_aup looks good for indian voice. cmu_slp has a bit of unusual accent in few words, but it is understandable
Any ideas why i cannot run Larynx, any of the voices??
They all give me this error or very similarâŚ
[ERROR:2021-04-13 20:06:24,198] rhasspyserver_hermes: [ONNXRuntimeError] : 3 : NO_SUCHFILE : Load model from /profiles/en/tts/larynx/en-us/harvard-glow_tts/generator.onnx failed:Load model /profiles/en/tts/larynx/en-us/harvard-glow_tts/generator.onnx failed. File doesnât exist
Traceback (most recent call last):
File â/usr/lib/rhasspy/.venv/lib/python3.7/site-packages/quart/app.pyâ, line 1821, in full_dispatch_request
result = await self.dispatch_request(request_context)
File â/usr/lib/rhasspy/.venv/lib/python3.7/site-packages/quart/app.pyâ, line 1869, in dispatch_request
return await handler(**request_.view_args)
File â/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/main.pyâ, line 1692, in api_text_to_speech
results = await asyncio.gather(*aws)
File â/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/main.pyâ, line 1678, in speak
say_chars_per_second=say_chars_per_second,
File â/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/init.pyâ, line 625, in speak_sentence
raise TtsException(say_response.error)
rhasspyserver_hermes.TtsException: [ONNXRuntimeError] : 3 : NO_SUCHFILE : Load model from /profiles/en/tts/larynx/en-us/harvard-glow_tts/generator.onnx failed:Load model /profiles/en/tts/larynx/en-us/harvard-glow_tts/generator.onnx failed. File doesnât exist
[ERROR:2021-04-13 20:06:24,195] rhasspyserver_hermes: TtsError(error="[ONNXRuntimeError] : 3 : NO_SUCHFILE : Load model from /profiles/en/tts/larynx/en-us/harvard-glow_tts/generator.onnx failed:Load model /profiles/en/tts/larynx/en-us/harvard-glow_tts/generator.onnx failed. File doesnât exist", site_id=âVoice1â, context=âcd33bd7c-eaab-410a-9298-36bc65966ae3â, session_id=ââ)
[DEBUG:2021-04-13 20:06:24,185] rhasspyserver_hermes: Handling TtsError (topic=hermes/error/tts, id=a3b5fe98-46a3-444e-82c3-ff3d5e56b55c)
[DEBUG:2021-04-13 20:06:24,148] rhasspyserver_hermes: Publishing 142 bytes(s) to hermes/tts/say
[DEBUG:2021-04-13 20:06:24,147] rhasspyserver_hermes: -> TtsSay(text=âArse biscuitsâ, site_id=âVoice1â, lang=âharvardâ, id=âcd33bd7c-eaab-410a-9298-36bc65966ae3â, session_id=ââ, volume=1.0)
[DEBUG:2021-04-13 20:06:24,143] rhasspyserver_hermes: TTS timeout will be 30 second(s)
Seems like the profiles folder isnât shared to docker
docker run -d -p 12101:12101
âname rhasspy
ânetwork host
ârestart unless-stopped
-v â$HOME/.config/rhasspy/profiles:/profilesâ
âdevice /dev/snd:/dev/snd
rhasspy/rhasspy
âuser-profiles /profiles
âprofile en
Are you missing that -v â$HOME/.config/rhasspy/profiles:/profilesâ ?
I used thisâŚ
start dockerâŚ
docker run -d -p 12101:12101
âname rhasspy
ânetwork host
ârestart unless-stopped
-v â$HOME/.config/rhasspy/profiles:/profilesâ
âdevice /dev/snd:/dev/snd
rhasspy/rhasspy
âuser-profiles /profiles
âprofile en
Duuno Dave as seems correct profiles and stuff all in $HOME/.config/rhasspy/profiles then so they are shared to /profiles in the container?
After you select a voice and restart, make sure you check the top of the web page for a Download button. The models all together are over 1 GB in size, so I have Rhasspy just download the voices you select.
Thats the one Its working now, thanks again