Google TTS: playback skips first part of the text. What to do?

I am testing the Google TTS playback, but have an issue that I do not know how to get around. Currently I have just configured the TTS in configuration.yaml. In the Hass.io gui I click on one of the Chromecast devices, type a text and send it to the speaker. The problem is that the first part of the text is silent. If I immediately after send the same text to the speaker again the whole text is spoken. If I wait like 10 seconds and send the same text the first part of the text is silent.

It is just as if the chromecast needs to be woken up right before the text is sent to the device. Any ideas?

I have the same effect recently. I think it was no issue in the docker image I used before

Why not automate a wake TTS message if chromecast is asleep, or everytime if it works ok?

Try a blank " " or “a”

same here, its a bit annoying

Not entirely helpful because it’s not the Google TTS component - but I have the same issue with Chromecast using the Amazon Polly TTS.

To get around it I use an SSML tag to insert a 1 second pause before the TTS message.

I thought of a similar workaround. How does this SSML tag look like that generates a 1 second pause when us use it ? How would you change the code in the test below? I looked at the break SSML tag, but don’t know how to change below.

service: tts.google_say
entity_id: media_player.floor
data:
  message: 'May the Force be with you.'
service: tts.google_say
entity_id: media_player.floor
data:
  message: '<speak><break time="1s"/>May the force be with you.</speak>'

But I’m not sure if the Google TTS component supports SSML. I don’t think it does from memory. You’d want to look at Amazon Polly, or one of the other options that supports it.

I changed to Amazon Polly and now SSML works. Thanks!

Unfortunately I still have some issues with messages being cut off and/or speakers going into idle mode.

Are there any commands to wake up speakers, then delay before sending TTS messages?

You could try adjusting the Chromecast volume down, then back up?

Or just increase the SSML delay from 1s to 2s, and move up in second increments until you find what works best for your setup.

Thanks this worked for me on Kodi!!!

I had the same problem and I fixed it in Kodi by changing the setting of the Audio.
So in Kodi go to System Parameter --> Audio --> change output configuration to “Fix” instead of Optimize
Thats remove the cutoff at the beggining of TTS command from Home Assistant

Good Luck

1 Like

See: LinkPlay Integration - #420 by robi