Home Assistant – Piper – Multi Language Workaround / Setup
Piper works well for single language when setting it up through its configurations page.
Unfortunately, it has some issues when trying to set use other languages on a per automation basis.
action: tts.speak
metadata: {}
target:
entity_id: tts.piper
data:
cache: true
media_player_entity_id: media_player.smarts_smartspeakerplayer
message: You seem to be good at this. We'll see how good, or maybe not.
language: en_US-danny-lowThis get a language not supported pop up with piper. Which could be just how it supposed to work.
With Google translate the language selector works flawlessly so it’s a bit confusing and poorly documented to say the least.
Luckily the Piper workaround is fairly easy by editing the TTS: Speak .yaml file by adding options to it.
options:
voice: en_US-danny-low
speaker: 0
So the whole .yaml would look like this:
action: tts.speak
metadata: {}
target:
entity_id: tts.piper
data:
cache: true
media_player_entity_id: media_player.smarts_smartspeakerplayer
message: You seem to be good at this. We'll see how good, or maybe not.
options:
voice: en_US-danny-low
speaker: 0
