Close

Finding DECtalk

A project log for 80speak - Online DECTalk Speech Synthesis

I've always been a fan of Stephen Hawking's signature speech synthesizer, so I made a publicly available version of it!

lixie-labsLixie Labs 03/24/2017 at 21:550 Comments

One of the biggest challenges in creating 80speak was sourcing the software to emulate the famous voice of Professor Hawking, and attach it to a web server that the public can use. I possibly could have found original DECtalk hardware and tied that to a Raspberry Pi for control, but this would trade off speed for only a slight authenticity gain. Unlike the original hardware, purely software-based DECtalk instances can be run in parallel, and can produce the speech much faster than it can be spoken. With a hardware solution, it would have to receive a command, capture 1-5000 words of speech in real time, and return the recording to that specific user before processing the next phrases.

Finding DECtalk Software

Finding a DECtalk demo is actually pretty easy. The most commonly distributed version is "SPEAK.EXE", which is a GUI allowing you to have one of ten voices speak any text you write in. (The one we need is the default "Perfect Paul" voice)

However, this won't do. On a Windows machine you could generate macros to control the GUI automatically, but on a headless Linux server you need something a little more command line-based.

Eventually I found a distribution of DECtalk that came with exactly what I needed: "SAY.EXE". This is a command line-only version of DECtalk, which would allow me to automate the speech generation process! If run with no arguments, it reads whatever is typed into STDIN. If provided with quoted text after the exe, it will read that aloud and then quit.

Next up was capturing the audio to a file, but luckily the SAY executable will allow you to write the output to .WAV format directly, so this saved me a step!

Discussions