Easy speech plugin

I’ve got an old linux laptop running with Festival installed (a free TTS program). I can make it listen on a port, and speak any text that is sent to the port.

I’ve got an Elk M1 and have speakers for the ELK voice announcements all over the house. A simple modification gives me a line-in and I can pipe whatever I want through the speakers. I really like the voice announcements my ELK gives me, but you’re limited to a 500 word vocabulary. Adding TTS capability to the Vera would allow me to move most of the automation from the ELK over to the Vera, and with better quality voices.

How hard would it be to make a plugin that would allow you to send a string of text to a TCP or UDP socket?

Here’s a demo of it with different voices. Try Anna:
http://www.cstr.ed.ac.uk/projects/festival/onlinedemo.html

I guess people have it running on Raspberry Pi, but it looks like orders for those are taking months. My other thought was to use the built-in TTS capability on Android, and use an old phone I have to write an app that listens on a socket and speaks anything sent to it, and then just stick it permanently in my security panel. And, with Android, there are a ton of downloadable voices available.

But, I’ve got the laptop now, and festival is available as a Ubuntu package.

So, how hard would it be to write a simple plugin that sent a text string over a socket?

Check out section 28.3:

http://www.cstr.ed.ac.uk/projects/festival/manual/festival_28.html

Festival has a network listening capability built it. I was just going to invoke it through inetd. This seems to be much better since you don’t need to wait a few seconds to initialize.

very simple. there’re lots of examples, for instance this Tivo plugin is a good start: http://forum.micasaverde.com/index.php/topic,8835.msg69861.html

Vera Alert already does this.

From what I can tell, Vera Alert just speaks events. What if I wanted to send a string of text from Vera to the phone to have it speak it. Like maybe I have a Scene set up for disarming the alarm in the morning, and get it to pull weather data and say something like “Good Morning Signal15. It’s currently 72 degrees outside, and today’s forecast is a high temperature of 213 degrees with rain turning to steam. Nice underwear.”

I found the instructions for it. Testing it now. The page for it says that it uses google’s cloud to device messaging service. It would be nice if this just talked over the local network, removing the need for an up internet connection.

Agreed. Your points are all valid.