TuxTalk, is a software-based synthesizer for the GNU/Linux operating system, originally based on rsynth. TuxTalk is scheduled to be the first software synth for speakup. TuxTalk has been designed to accept in-stream commands based on the DoubleTalk command set. It currently supports rate, pitch change, punctuation levels and most important instant silencing of speech.

The fundamental challenge to preparing TuxTalk for inclusion in the speakup system is size. Most software based voice synthesizers are very large and thus unsuitable for building into the Linux kernel.

Of course, there are always trade offs. When you hack a software synth down to a usable size you give up speech quality. The goal therefore is to create a small enough package to be useful and retain the highest quality possible.

The next challenge is to create a module out of it which can be loaded and unloaded at will into the kernel. To do this the code has to be as self-dependent as possible. With a software synthesizer you need to consider the audio drivers necessary to produce the sound for the synth.

For the speakup project we tend to use the ALSA drivers because of their nice handling of many sound cards and features. Unfortunately, the ALSA drivers can not be compiled into the kernel. This creates a problem for speakup because we want to have speech available as early in the booting process as we can. So, we either need to make TuxTalk work with the standard OSS drivers which come with Linux or modify the ALSA drivers to compile into the kernel.

Currently, TuxTalk's voice quality is not really that high. We can improve that with out to much difficulty. First however, we need to overcome some of the problems mentioned above. Speakup is currently being rewritten to support loading modules to accommodate TuxTalk as a module.

TuxTalk is currently waiting for speakup's driver modularization and for someone with more time to work on it.

TuxTalk can be found in the linux-speakup.org cvs area with the module name tuxtalk. You can check it out by doing:

cvs -d:pserver:anonymous@linux-speakup.org:/usr/src/CVS login
Password: please
cvs -d:pserver:anonymous@linux-speakup.org:/usr/src/CVS checkout tuxtalk

Be careful, the CVS in the path above is uppercase.

Kirk Reiser is the current project maintainer with occasional tinkering by Terry Cudney.


Hey! Including yourself, this page has had
This file last modified on: Wednesday, 16-Jan-2002 15:22:50 EST