Google Assistant TTS [Custom Component]

Google Assistant TTS Custom Component
I got super annoyed with how robotic the Google Translate TTS voice is so I decided to make a custom component to allow Home Assistant to use the much more realistic Google Assistant text-to-speech voice.

This is my first Home Assistant component so I apologize if it’s messy.

It uses Assistant Relay v3 so you will also need to have that installed.

There is a great Assistant Relay add-on for Hassio made by Apipa169 available here:

1 Like

This is amazing! I’ve been using the regular broadcast function of assistant relay but that doesn’t let me send messages to specific speakers. This fixes that issue! Works great so far but will be testing it the coming days, I will let you know if there is something wrong. Thanks for the integration!

Good work, couple of questions though…

Why not use the Google Cloud TTS? It sounds really good and is free unless you use a crazy amount of requests.

Or the HA Cloud one if you have a HA Cloud account.

Does it interrupt music to broadcast to a group of speakers only rather than all, and continue playing music? If so, then that’s awesome!

No problem! Glad it’s working for you. Let me know if there’s any issues. :+1:

Mainly because I usually make A LOT of requests and I don’t like the idea of having to pay for a service when I am already running Assistant Relay for broadcasts and Google Commands. Google Cloud is a good option too though.

Fair enough., but would you use over 1 million characters a month? it’s free until then.

Keen to know how the speaker group option can work… I currently use the Assistant Relay for my broadcasts (have done for a long time now) but it would certainly be nice to prevent the broadcasts going to some of my devices since I have a lot of them.

You should be able to use the TTS component to cast messages to a speaker group. Unfortunately, it wouldn’t work like the official “broadcast” feature where it will pause your music and resume afterwards.

Another option to consider is using the Google Home custom component to enable do not disturb on the speakers you don’t want to play the message before you send the broadcast.

1 Like

Blockquote
Does it interrupt music to broadcast to a group of speakers only rather than all, and continue playing music? If so, then that’s awesome!

this

Also, the TTS from Google Cloud tts is cached.

Check these out as well, openTTS as a dropin for maytts. Larynx is used, which is also a lot better then google translate