Please Say Hello to RenoTTS!
RenoTTS V1.0.0 Beta 2.1 (Public Beta Release)
I’m ashamed to say that though I’ve been lurking here for years, this will be my first post. I’ve been working on this project for some time, and could use some testers/tinkerers to help me locate any remaining bugs.
RenoTTS is a single binary server written entirely in Go. It acts as an intermediary for AWS’s Polly TTS Engine. It creates a REST server on a SBC such as NextThings C.H.I.P. or Raspberry Pi (I’ve been testing heavily on C.H.I.P. and Pi 3 B+). It can also be run on almost any linux build (though I’ve only compiled for ARMv7l and AMD64 for this beta)
The application itself handles:
- All Communication with AWS
- Download and caching of files
- Playback of files
- UPNP discoverability
- Server setup and configuration
- Boot configuration
- Provides test tools
Additionally, I’ve created a connector SmartApp as well as a Device Handler for RenoTTS. Obviously these handle connection to the server(s) as well as the ability to:
- Use RenoTTS as a variety of different media device types including ‘Speech Synthesis’ and ‘Music Player’
- Speak via TTS from various SmartApps
- Choose Voice (AWS Polly voices are quality voices)
- Change voice at any time
- Change sample rate
- Adjust silence padding options
AWS Polly has a free tier that is very generous, after that’s over it’s literally pennies for what we’re trying to accomplish ($4.00 for 1 million characters). Since RenoTTS caches queries, there’s a very good chance you’ll cache all the TTS speech you need during the free tier and not have to pay a dime. For instance: ‘Garage Door Opened’ or ‘Amy has Arrived Home’ must only be downloaded once per server, per voice. Honestly, in all my testing and usage, I’ve paid nothing.
Please see https://renotts.com for much more information, as well as installation instructions.
I’d love some feedback if anyone gets around to tinkering or testing
[v1.0 Beta 2.2] - 2017-09-30
- Fixed bug resulting in panic on devices with only one available net hardware interface
[v1.0 Beta 2.1] - 2017-08-21
- Fixed bug that prevented correct IP determination at boot for some devices
[v1.0 Beta 2] - 2017-08-20
- Fixed bugs in player implentation:
- Track cutting off before finished
- Poor sound quality on Raspi (See updated tips @ renotts.com)
- Increase max value of force-portaudio-buffer-size from 40000 to 60000