Anyway to make voice announcements local?

I heard we could now save mp3s to our hubs do we have to be on a certain software number

I think the File Manager has been out got quite some time. Settings : Show advanced options (On) : File Manager.

2 Likes

Ok Thanks a bunch

I have a couple Eufy speakers. I used an app called media renderer to make them into Sonos knock-offs. They can be used to play music and controlled by Hubitat at this point. They're not great, but what they do very well is play a pre-recorded message. I generated a bunch of voice clips using an AWS service, I think it was Amazon Poly. Stored them on my hub and call the Eufy speakers as music device to play back my clips. I have a dozen announcements plus some door chime sound effects I use on holidays.

2 Likes

Nice! That's a great idea to render the clips through Amazon beforehand. I used a GlaDOS voice generator and some autotune effects in Melodyne to render a bunch of clips for my scenes and routines. Plus a few "official" sound clips from Portal ("Hello, and again, welcome to the Aperture Science Enrichment Center" / "Who turned out the lights?" / turrets saying "He-E-ello" / etc.).

1 Like

Which is exactly what Hubitat’s built-in TTS engine does. For each new text phrase, Hubitat makes one call to AWS’s Poly service, and then caches the resulting audio file on the hub. The next time that exact phrase is requested, there is no need to hit AWS, and the hub will simply reuse the cached audio clip, and send it to the Sonos speaker.

3 Likes

Interesting. Is there a reason the built-in TTS voices are such poor quality, compared to the standard “Alexa” / Echo Speaks voice?

They are simply the AWS Polly voices. They seem alright to me.

2 Likes

I don't know if they are "such poor quality", but I would agree that they are less natural than the standard "Alexa" voice.

Agreed. Except I think that a subset of the AWS Polly voices support "Neural TTS", in which the use of audio spectrograms and re-coding is supposed to make more "human-like" voices. The standard Alexa voice is a Neural TTS voice.

The voice engine used can be selected at the time of generation. I don't know whether Hubitat uses neural TTS for those voices that support it.

2 Likes

The AWS polly pricing is 4x more expensive for the neural voices. I wouldn't expect Hubitat to use them since they have to eat the cost. I set the hubitat voice to Joanna and find it good for my purposes.

2 Likes

I purchased a few aeotec doorbells, then used a TTS website to create voice files to load to them. I don't remember what site I used, but a google search for text to speech converter should provide you with something. You may need to try a few to find a voice that sounds natural to you.

I numbered the files so I would always load them to the doorbell in the same order. By doing this, I can set the same "chime" number for all of the doorbells and have the correct file play on all of them.

The only problem I've found is that one doorbell sometimes stutters. My only guess is that it gets confused when I'm sending the command to all three doorbells in the house.

I have never messed with any of this on Sonos/Chromecast but if it's only a handful of the same announcements I wonder if you could just store/send an audio clip of the announcement via something like base64.

I use something similar for sending audio alerts to the HomePod mini in my son's room whenever his laundry is done... although those are just vintage video game sound effects.

I have 3 Sonos speakers and love them. The builtin integration in Hubitat works well. No cloud required..... Beside that they sound great!

1 Like

Well, there is still a little bit of cloud traffic required for each new TTS phrase...

2 Likes

The same thing I did and the only reason I bought the AEOTEC Doorbell 5 (one in detached garage, one in 2nd floor). Note that AEOTEC Doorbell 6 does not allow uploading sound files.

For main living area, I have my Android Tablet, aka Main controller for all smart devices, running Hubitat app and Speaki which will do TTS and speak out the Hubitat notification. Hubitat notification uses Internet Push Message, so it requires Internet. I did try Lannoucer before on another tablet but not on this one.

For those complaining about the quality of the TTS audio, try the Amy voice. I think is the most natural sounding voice. It's got a british accent. I used Ivona Voice with Amy on an Android tablet connected to the whole house audio system before Amazon bought Ivona. It does suck that it's no longer local and requires an internet connection now. I still have the old software and voice files though and got it working on a Raspberry Pi running a version of Android.

One thing interesting that I've noticed is that when you make it speak something really long, the pitch and speed can fluctuate significantly.

Are those TTS audio files on the hub -

a) accessible through the file system
b) readily identifiable / correlated with / named in way you'd know what TTS they represent
c) swap-able as named and correlated with some alternative audio of the same format?

To the best of my knowledge…

No
No
No

1 Like

pondering Ogiewon's reply-

:roll_eyes: ....so like all my goofin around getting the Sonos to say whatever in testing...is now stored for eternity in my Hubitat ...........Wooonderfulllll :grimacing:

I bet a reset will clean up that mess. Let us know how that works. :stuck_out_tongue_closed_eyes:

1 Like