Mycroft Community Forum

Speech result very slow

MyCroft is working correctly, however, she is very slow to ‘say’ the results.

Example - I say “MyCroft, what time is it?”.

The time is displayed instantly, but her saying the time happens about 5 minutes later.

This is with any response. I asked for the running version. Again it was displayed almost instantly, but her ‘saying’ the installed version took a long time and then a long time afterwards came the next response of “you are on the current version”.

i have the same issue. is there any solution?

What TTS are you using?

i’m trying to use google in german

i used the guide from mycroft: (https://mycroft-ai.gitbook.io/docs/using-mycroft-ai/customizations/languages) and this: (https://github.com/gras64/docs-rewrite/blob/master/docs/using-mycroft-ai/customizations/languages/german.md)

but at the end i get the male english voice from google. STT in german works perfectly fine

You are providing links to TTS documentation which gives a lot of options for TTS engines - which one did you configure (Google, espeak, …)?

From what I read here in the forums Google TTS seems to have problems recently. In case gTTS times out the local Mimic1 voice might be used as a fallback. Maybe that is the scenario that you are observing right now?

Btw: I am running a local TTS engine with this Free german tts voice for mycroft (sneak preview)

1 Like

I am using Google as well. I have had it fallback on Mimic before, but in this case, when she does respond, she is using Google and has the right response (other than time is now wrong).

Today, she is back to normal response times (I didn’t change anything on my side).

You can parse the audio.log file to see if there’s something taking a long time to process there. Perhaps even the voice.log file if that’s where it’s being slow. But if you haven’t changed anything and the speed is varying independently of your setup, then it’s probably not your end that’s the problem.

I will do this wen I get home tonight. FYI - she back to being slow this morning.

Audio.log…

2020-11-16 18:22:50.142 | INFO | 886 | mycroft.audio.speech:mute_and_speak:127 | Speak: It’s six twenty two
2020-11-16 18:24:44.032 | WARNING | 886 | gtts.tts | Unable to get language list: ‘NoneType’ object is not subscriptable
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layers 1, 2 and 3
version 1.20.1; written and copyright by Michael Hipp and others
free software (LGPL) without any warranty but with best wishes

Directory: /tmp/mycroft/cache/tts/GoogleTTS/
Playing MPEG stream 1 of 1: a6629d8c1f9f165e6347cc9c7db23af7.mp3 …

MPEG 2.0 layer III, 32 kbit/s, 24000 Hz mono

[0:01] Decoding of a6629d8c1f9f165e6347cc9c7db23af7.mp3 finished.

You need about 20 lines before that as well. Check the voice.log as well to see when that gets handed over to audio.

I can get those tonight. Tried to pare down the audio log to where the issue showed, but can definitely get more info.

cat voice.log

2020-11-17 06:44:09.910 | INFO | 883 | mycroft.session:get:74 | New Session Start: c73604f8-54ce-4441-b4fb-d23a01a8d97c
2020-11-17 06:44:09.914 | INFO | 883 | mycroft.client.speech.main:handle_wakeword:67 | Wakeword Detected: hey mycroft
2020-11-17 06:44:10.328 | INFO | 883 | mycroft.client.speech.main:handle_record_begin:37 | Begin Recording…
2020-11-17 06:44:11.879 | INFO | 883 | mycroft.client.speech.main:handle_record_end:45 | End Recording…
2020-11-17 06:44:12.947 | INFO | 883 | mycroft.client.speech.main:handle_utterance:72 | Utterance: [‘what time is it’]
2020-11-17 06:48:51.889 | INFO | 883 | mycroft.session:get:74 | New Session Start: 2536d902-fd9d-48c8-80c7-c6a52c51a38a
2020-11-17 06:48:51.893 | INFO | 883 | mycroft.client.speech.main:handle_wakeword:67 | Wakeword Detected: hey mycroft
2020-11-17 06:48:52.309 | INFO | 883 | mycroft.client.speech.main:handle_record_begin:37 | Begin Recording…
2020-11-17 06:48:53.786 | INFO | 883 | mycroft.client.speech.main:handle_record_end:45 | End Recording…
2020-11-17 06:48:54.789 | INFO | 883 | mycroft.client.speech.main:handle_utterance:72 | Utterance: [‘where are you’]
2020-11-17 21:59:53.318 | INFO | 883 | mycroft.session:get:74 | New Session Start: 688835f1-60a4-45f8-8481-404b5f51836f
2020-11-17 21:59:53.323 | INFO | 883 | mycroft.client.speech.main:handle_wakeword:67 | Wakeword Detected: hey mycroft
2020-11-17 21:59:53.741 | INFO | 883 | mycroft.client.speech.main:handle_record_begin:37 | Begin Recording…
2020-11-17 22:00:03.742 | INFO | 883 | mycroft.client.speech.main:handle_record_end:45 | End Recording…
2020-11-17 22:00:06.134 | INFO | 883 | mycroft.client.speech.main:handle_utterance:72 | Utterance: [‘what time is it’]

cat audio.log

2020-11-17 06:44:13.095 | INFO | 886 | mycroft.audio.speech:mute_and_speak:127 | Speak: six forty four
2020-11-17 06:46:08.390 | WARNING | 886 | gtts.tts | Unable to get language list: ‘NoneType’ object is not subscriptable
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layers 1, 2 and 3
version 1.20.1; written and copyright by Michael Hipp and others
free software (LGPL) without any warranty but with best wishes

Directory: /tmp/mycroft/cache/tts/GoogleTTS/
Playing MPEG stream 1 of 1: 1bd639a02fab7d3f908988161004bea7.mp3 …

MPEG 2.0 layer III, 32 kbit/s, 24000 Hz mono

[0:01] Decoding of 1bd639a02fab7d3f908988161004bea7.mp3 finished.
2020-11-17 06:48:55.131 | INFO | 886 | mycroft.audio.speech:mute_and_speak:127 | Speak: My settings tell me I’m at Fort Smith Arkansas United States
2020-11-17 06:50:49.139 | WARNING | 886 | gtts.tts | Unable to get language list: ‘NoneType’ object is not subscriptable
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layers 1, 2 and 3
version 1.20.1; written and copyright by Michael Hipp and others
free software (LGPL) without any warranty but with best wishes

Directory: /tmp/mycroft/cache/tts/GoogleTTS/
Playing MPEG stream 1 of 1: 9329c3edccf7174a14a0a5ca78aad504.mp3 …

MPEG 2.0 layer III, 32 kbit/s, 24000 Hz mono

[0:04] Decoding of 9329c3edccf7174a14a0a5ca78aad504.mp3 finished.
2020-11-17 22:00:06.286 | INFO | 886 | mycroft.audio.speech:mute_and_speak:127 | Speak: It is ten o’clock
2020-11-17 22:00:08.155 | ERROR | 886 | mycroft.audio.speech:mute_and_speak:134 | TTS execution failed (ValueError(‘Unable to find token seed! Did https://translate.google.com change?’))

I’d start checking google for those errors and see what you can find. Possible config error maybe, also check for updates to that tts tool, I think there were a couple that made it into a recent PR.

I ran

sudo apt update
```and

sudo apt full-upgrade

and this is what showed up audio.log

2020-11-19 07:13:23.253 | INFO     |   849 | mycroft.messagebus.load_config:load_message_bus_config:33 | Loading message bus configs
2020-11-19 07:15:19.370 | WARNING  |   849 | gtts.tts | Unable to get language list: 'NoneType' object is not subscriptable
2020-11-19 07:15:20.101 | INFO     |   849 | mycroft.audio.__main__:main:50 | Starting Audio Services
2020-11-19 07:15:20.123 | INFO     |   849 | mycroft.messagebus.client.client:on_open:114 | Connected
2020-11-19 07:15:20.152 | INFO     |   849 | mycroft.audio.audioservice:get_services:61 | Loading services from /opt/venvs/mycroft-core/lib/python3.7/site-packages/mycroft/audio/services/
2020-11-19 07:15:20.162 | INFO     |   849 | mycroft.audio.audioservice:load_services:105 | Loading chromecast
2020-11-19 07:15:25.679 | INFO     |   849 | pychromecast | Querying device status
2020-11-19 07:15:25.838 | INFO     |   849 | pychromecast | Querying device status
2020-11-19 07:15:25.958 | INFO     |   849 | audioservice_chromecast:autodetect:165 | Master Bedroom speaker found.
165 | Master Bedroom speaker found.
2020-11-19 07:15:25.961 | INFO     |   849 | audioservice_chromecast:autodetect:165 | Kitchen found.
2020-11-19 07:15:25.965 | INFO     |   849 | mycroft.audio.audioservice:load_services:105 | Loading mopidy
2020-11-19 07:15:25.976 | INFO     |   849 | mycroft.audio.audioservice:load_services:105 | Loading mplayer
2020-11-19 07:15:26.047 | ERROR    |   849 | audioservice_mplayer:<module>:20 | install py_mplayer with pip install git+https://github.com/JarbasAl/py_mplayer
2020-11-19 07:15:26.051 | ERROR    |   849 | mycroft.audio.audioservice:load_services:114 | Failed to import module mplayer
ModuleNotFoundError("No module named 'py_mplayer'")
2020-11-19 07:15:26.055 | INFO     |   849 | mycroft.audio.audioservice:load_services:105 | Loading simple
2020-11-19 07:15:26.094 | INFO     |   849 | mycroft.audio.audioservice:load_services:105 | Loading vlc
2020-11-19 07:15:26.382 | ERROR    |   849 | mycroft.audio.audioservice:load_services:129 | Failed to load service. NameError("no function 'libvlc_new'")
2020-11-19 07:15:26.386 | INFO     |   849 | mycroft.audio.audioservice:load_services_callback:177 | Finding default backend...
2020-11-19 07:15:26.389 | INFO     |   849 | mycroft.audio.audioservice:load_services_callback:181 | Found local
2020-11-19 07:15:26.392 | INFO     |   849 | mycroft.audio.__main__:on_ready:30 | Audio service is ready.
2020-11-19 07:24:29.561 | INFO     |   849 | mycroft.audio.speech:mute_and_speak:127 | Speak: It is eleven twenty four
2020-11-19 07:26:22.510 | WARNING  |   849 | gtts.tts | Unable to get language list: 'NoneType' object is not subscriptable
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layers 1, 2 and 3
        version 1.20.1; written and copyright by Michael Hipp and others
        free software (LGPL) without any warranty but with best wishes

Directory: /tmp/mycroft/cache/tts/GoogleTTS/
Playing MPEG stream 1 of 1: aca1ec5357c72b13588844da21a91e2f.mp3 ...

MPEG 2.0 layer III, 32 kbit/s, 24000 Hz mono

[0:02] Decoding of aca1ec5357c72b13588844da21a91e2f.mp3 finished.

Yeah, looks like almost two minutes. Google tts?

Yes, I am using Google tts.

Other than trying a different tts choice to ensure it’s not your local system, not sure what else to tell you.

I have some testing to do, but I think it is going to either be changes to the gtts calls on Google side or changes to the gtts library used by Mycroft and doing a ‘sudo apt-get full-upgrade’ installed a newer one (losing Mycroft changes).

1 Like

I moved the install the to ‘unstable’ build, tested, back to the ‘stable’ build and tested and both have the same results (slow speech with Google tts). I did this in hopes of forcing the stock MyCroft installs just in case they might have been updated by something else with the OS ‘full’ update.