Despite the heroic efforts of Lefteris Zafiris to keep GoogleTTS afloat for use with Asterisk®, Google has made it increasingly clear that they intend to blow everyone’s apps out of the water (except theirs) if you choose to use their text to speech engine, even in open source, non-commercial products. As much as we’ve loved the voice quality and Google’s previous generosity in sharing their work product with the open source community, there comes a time when the mud wrestling simply is no longer worth the effort. Thanks to the pioneering efforts of Steven Mirabito, we all now have a choice. Steven took the work of Lefteris on GoogleTTS and retrofitted it to support the free SVOX Pico TTS engine. While Pico lacks a bit of the voice quality of GoogleTTS, it’s a quantum leap improvement over Festival and FLITE and perfectly suitable for Incredible PBX TTS apps.
Unlike FLITE which has no voice alternatives to Lurch, Pico for Android has a rich assortment of 40+ male/female voices supporting 25+ languages. Many of them are free. Hopefully, it’s only a matter of time until someone documents how to move them over to the Linux platforms. For today, our default install includes support for US English, British English, French, Spanish, and German. After the install, you’ll find them in /usr/share/pico/lang. Changing voices and languages in your Asterisk scripts is simple. Replace the default language identifier, en-US, with the voice of your choice, e.g. en-GB for British accents, fr-FR for French, es-ES for Spanish, and de-DE for German. If you wish to generate wave files at the command prompt, the syntax is shown below. Here’s the command we used to generate the sample sound file above.
pico2wave --wave sample.wav -l en-US "Here is a sample, using the PICO text to speech engine."
We’re getting a little ahead of ourselves here. Before you can use Pico TTS, we first need to get it installed. There are two different procedures depending upon whether Incredible PBX is running on the CentOS/Scientific Linux platform or Debian/Ubuntu/Raspbian. The installation procedure below will install all of the necessary components for Pico TTS on an existing Incredible PBX platform. It also will modify the Incredible PBX apps that currently rely upon GoogleTTS. And, as of yesterday, all new Incredible PBX 13 installs include Pico TTS by default.
To get started, log into your server as root and choose the installation steps documented below for your particular platform.1
Installing Pico TTS on the CentOS/Scientific Linux Platforms
cd / wget http://incrediblepbx.com/picotts.tar.gz tar zxvf picotts.tar.gz cd /root ./picotts-install.sh sed -i 's|en)|en-US)|' /etc/asterisk/extensions_custom.conf sed -i 's|googletts|picotts|' /etc/asterisk/extensions_custom.conf asterisk -rx "dialplan reload"
Installing Pico TTS on the Debian/Ubuntu Platforms
cd / wget http://incrediblepbx.com/picotts.tar.gz tar zxvf picotts.tar.gz cd /root rm -f picotts-install.sh apt-get update apt-get install -y libttspico-utils sed -i 's|en)|en-US)|' /etc/asterisk/extensions_custom.conf sed -i 's|googletts|picotts|' /etc/asterisk/extensions_custom.conf asterisk -rx "dialplan reload"
Installing Pico TTS on the Raspberry Pi Raspbian Platform
cd / wget http://incrediblepbx.com/picotts-raspi.tar.gz tar zxvf picotts-raspi.tar.gz rm -f picotts-raspi.tar.gz cd /root echo "Installing Pico TTS..." ./picotts-install.sh
Post-Install Testing of Pico TTS with Incredible PBX
The easiest way to make sure everything is working properly is to pick up a phone on your server and dial 951 for the latest Yahoo News headlines. Keep in mind that Google Speech Recognition (Google STT) still works for apps such as Voice Dialing (411), Voice Messaging (767), Wolfram Alpha (4747), and Star (8). However, these apps require a free API key before use. The procedure to obtain and install one is documented in this Nerd Vittles article.
Changing the Pico TTS Voice with Incredible PBX
All of the Incredible PBX application scripts are saved in extensions_custom.conf in the /etc/asterisk directory. To change the default voice for Pico TTS apps, simply search and replace en-US with the desired voice: en-GB, fr-FR, es-ES, or de-DE. Save your changes. And then reload your Asterisk dialplan:
asterisk -rx "dialplan reload"
Originally published: Monday, January 11, 2016
— Ward Mundy (@NerdUno) April 22, 2016
Need help with Asterisk? Visit the PBX in a Flash Forum.
Special Thanks to Our Generous Sponsors
Awesome Vitelity Special. Vitelity has generously offered a terrific discount for Nerd Vittles readers. You now can get an almost half-price DID from our special Vitelity sign-up link. If you’re seeking the best flexibility in choosing an area code and phone number plus the lowest entry level pricing plus high quality calls, then Vitelity is the hands-down winner. Vitelity provides Tier A DID inbound service in over 3,000 rate centers throughout the US and Canada. When you use our special link to sign up, Nerd Vittles gets a few shekels down the road to support our open source development efforts while you get an incredible signup deal as well. The going rate for Vitelity’s DID service is $7.95 a month which includes up to 4,000 incoming minutes on two simultaneous channels with terminations priced at 1.45¢ per minute. Not any more! For our users, here’s a deal you can’t (and shouldn’t) refuse! Sign up now, and you can purchase a Tier A DID with unlimited incoming calls and four simultaneous channels for just $3.99 a month. To check availability of local numbers and tiers of service from Vitelity, click here. NOTE: You can only use the Nerd Vittles sign-up link to order your DIDs, or you won’t get the special pricing! Vitelity’s rate is just 1.44¢ per minute for outbound calls in the U.S. There is a $35 prepay when you sign up. This covers future usage. Any balance is refundable if you decide to discontinue service with Vitelity.
3CX is a software PBX that’s easy to install & manage. It includes integrated softphones, WebRTC conferencing and essential add-ons out of the box, at no additional cost. Try the free edition at www.3cx.com. Better yet, download the PIAF5 ISO powered by 3CX. Free version includes support for 8 simultaneous calls with a SIP trunk.
RentPBX, a long-time partner and supporter of PIAF project, is offering generous discounts for Nerd Vittles readers. For all of your Incredible PBX hosting needs, sign up at www.RentPBX.com and use code NOGOTCHAS to get the special pricing. The code will lower the price to $14.99/month, originally $24.99/month. It’s less than 50¢/day.
Some Recent Nerd Vittles Articles of Interest…