This a demo of two different Text-To-Speech (TTS) solutions for Arduino reciting Fresh Prince Of Bel-Air lyrics: 1) SpeakJet single-chip voice and complex sound synthesizer and 2) Emic 2 Text-to-Speech Module.
I started with the SpeakJet chip, but I was unhappy with how it pronounces most strings. It is VERY robotic. If you are creative you can spell words to sound the way you want, but since my strings were dynamic tweets this wasn't a good option for me. Also I noticed in this demo, that it's possible to overflow the chip's buffer. When this happens the chip either stops responding or says nonsensical words.
The Emic 2 Text-to-Speech Module is feature rich and produces 9 different voices in both English and Spanish using the Fonix DECtalk speech synthesizer engine. The default voice is "Perfect Paul", and a version of this is used by Stephen Hawking! I had issues changing voices on the fly. The module was dispatching complete strings prematurely, making it difficult for me to synch servos with speech.
Hopefully this demo helps others in making a decision between these two TTS solutions for Arduino.
An option for a future project that requires TTS might be a Rasberry Pi running the espeak library.
If you have ever watched Late Night with Conan O'Brien or have heard of Triumph The Insult Comic Dog you may be able to make some sense of this. This installation searches, reads and archives tweets containing Triumph's famous catch phrase.
You can see a build log of entire project here: