Speech Synth section!
There's excellent Adafruit article on Raspberry Pi speech synthesis by Mike Barela, here https://learn.adafruit.com/speech-synthesis-on-the-raspberry-pi . Worth checking out for many reasons. It outlines using 2 speech synth apps, Flite and Festival. A little further research and it turns out there is another speech synth available for the pi, espeak. All can be accessed from the command line, or can receive instructions through a pipeline.
I did a few experiments, spooking my son by making his pi talk to him remotely via ssh, getting the programs receive pipeline commands and read text files. I found that flite and festival both worked without problems, where espeak would throw errors as it looked for various outputs and jack, an audio flow application. I think espeak could be made to work with some configuration changes, but I would keep the system simple by avoiding jack. I've found it can be a little high maintenance. Sorry to throw that at you jack enthusiasts, I just haven't spent enough time playing with it and I'ld like to keep this project as clean as possible.
So based on some errors reported, and a bit of flaky Pi activity after using espeak, it's out of the running. I can see why it didn't make it into Mike Barela's article. In some ways it's my favourite. It seems to speak brisker, but mostly because it sounds like an old sci fi robot, and it has a funky english accent. Hmmmmm, maybe something in the future....
Flite and Festival. Take a listen to my files, standard computer speech test 1 and 2. You'll hear all three synths. Just based on personal preferences, and an odd 1970's English sense of humour, I still like espeak, festival seems to have the clearest voice, and, well, Flite was there. But in the second test, Festival makes a big pause between the phrase, and the announcement of it's name. There's a line break there in the text file, could be causing the pause. I find that sort of pause in the middle of phrases distracting, or, rather, I totally loose attention while I'm waiting and start playing with other buttons. Perhaps that's just my problem. Nonetheless, for reliability and smoothness, so far Flite is the winner.
Just to check out Festival further, I'll write a text file with line breaks and see if it can read through them cleanly. I'm planning on using phrases with variables for adjectives and numbers, so there will be some chances for the pause to crop up in my program's interface. And next time I'll give a sample of how the menus will sound.
associated files; - look for these in the files section of this project -
SpeechAndAudioScripts.zip - contains the scripts for the mp3s and scripts to change the audio output from HDMI to analog