Daily Archives: 2/17/2011

Your first Digital to Analog Converter

To control my simple Beacon, I used PWM and as simple (but slow) RC filter. That worked good enough for a test, but I really wanted the voltage changes to be more rapid. What alternatives are there? Well, I actually ordered a $5 I2C DAC board from Sparkfun, but it hasn’t arrived. The obvious low-tech alternative is to use a R-2R resistor ladder. Somewhat coincidently, hackaday had a tutorial on them just a few days ago.

Your first Digital to Analog Converter build – Hack a Day.

Addendum: This page talks about the need for a buffer amplifier to be used in concert with the D/A converter. That’s because any load (resistance) you place on the output works in concert with the resistor network to change the output voltage. If that load varies, it will also cause your output voltage. By buffering through a buffer amplifier (in this case, a rather cheap op amp) you prevent all that, and the DAC works more reliably.

Battle of Speech Synthesizers: CSpeak vs. Festival

Okay, this kind of like watching “America’s Most One Sided Fist Fights”, but I was diddling around with Cspeak, which is a speech synthesizer that is just 150 lines of code long, and thought I’d try to see just what quality it was capable of.

Well, it’s (not surprisingly) pretty hard to understand most of the time. Try this out:

CSpeak, reciting one of my favorite works of fiction.

Pretty hard to grok. It’s not just that the consonants are poorly represented, it’s got all sorts of oddly confusing changes in prosody and pitch which make the sentences really difficult to track. Did you figure out what work of fiction this was from?

You could cheat by listening to the same synthesized from Festival.

It’s interesting to surf over to Dennis Klatt’s History of Speech Synthesis and listen to some of the historic speech synthesizers, and decide where CSpeak falls in terms of legibility when compared to other historic speech synthesizers. I also liked this page on pre-electronic and pre-digital attempts at speech synthesis, which had some remarkably cool machines dating back to the 18th century.

CSpeak and Cantarino

Yesterday’s surfing churned a couple of interesting links on the subject of speech synthesis and computer singing. I wasn’t really explicitly looking for this stuff, and can’t reconstruct what led me here, but I thought I’d archive this here. The first is a link to a formant based speech synthesizer in just 150 lines of code. The quality is, well, not amazing, but the code is simple enough to follow, and enabled me to gain a grasp of formant synthesis, at least, with a little explanation from Tom.

CSpeak – David A Roberts.

They have a video too!

Apparently this is derived from Cantarino, a project to do speech synthesis on the Arduino. It can sing too, and a bit better to my ear.

Cantarino — Speech synthesis on the Arduino

Arduino sings ‘Daisy Bell’ from Tinker on Vimeo.

Both of these synthesizers have difficulty doing consonants in an intelligible way, but it is fascinating that such a simple technique can approach legible speech at all. Bookmarked for future tinkering.