GNOME Speech

The gnome-speech component of GNOME provides a service-based approach to speech synthesis engines. Each speech engine that is installed on the system can be exposed as a speech service by gnome-speech, allowing assistive technologies such as Orca to share the resource. Most of the available synthesis engines on the Open Solaris and Linux platforms are available via gnome-speech.

Obtaining Additional Synthesizers

The page contains a partial listing of the speech synthesis engines we know about for various platforms. The actual installation procedure will vary depending on the synthesizer you are setting up. Users are encouraged to share experiences with specific synthesizers below.

Cepstral Swift Voices

Cepstral's Swift voices are commercially available, and can be purchased from Cepstral at the following URL: http://www.cepstral.com

Although there are a number of Swift voices available, each with a different name, the installation procedure for all of them is identical. For the sake of clarity, in the below example, we will assume that we are working with the David voice.

After purchasing and downloading your new voice, extract and install the archive using commands similar to the following:

tar -xvf Cepstral_David_i386-linux_4.1.4.tar
cd Cepstral_David_i386-linux_4.1.4
./install.sh

Once the installer completes, use your favorite text editor to edit /etc/ld.so.conf, and add the following to the end of the file:

cat > /etc/ld.so.conf << EOF
/opt/swift/lib
EOF
ldconfig

The last step in the process is to enter your registration information, as provided by Cepstral at the time of purchase. To register your newly installed voice, type:

swift --reg-voice

Fonix DECtalk

Fonix DECtalk is available for Linux in two versions, 4.6 and 5.0. Although 5.0 is the newer release, many users claim to prefer the speech characteristics of the 4.6 version. You can purchase either version at the following URL: http://www.fonixspeech.com/pages/dectalk_rt_purchase.php

Some people have reported frequent hangs when using DECtalk in conjunction with Orca. It is believed that these hangs are somehow related to the interaction between DECtalk and the gnome-speech driver itself. This issue is still being investigated, and updated information will be posted here as it becomes available.

The installation procedure is the same regardless of whether we are working with version 4.6 or 5.0, and is described below:

Extract the archive with a command similar to the following:

tar -xvf linux_runtime_4.64_intel.tar.gz
cd DECtalk

At this point, we could just execute the install script; but before doing so, many users prefer to change the base directory in which the DECtalk files will be installed from /usr/local to /usr. Doing this will insure proper functionality of the synthesizer, and will forestall the need to later create symbolic links to the libs for each language you wish to use.To effect this change, use your favorite text editor to open files.sh. Near the top of the file, you will find the following line:

BASE_DIR="/usr/local"

Change it to:

BASE_DIR="/usr"

Save and exit the file.

Now, we are ready to execute the install script. Be sure to have the serial number for your copy of DECtalk near to hand, as the installer will need it before it will proceed. To do this, simply type the following:

./installer

All done! Remember however, that DECtalk will not be available until you rebuild gnome-speech.

Building GNOME Speech

The first step in rebuilding gnome-speech is to make sure you've set up your build environment. obtain the source. The most up to date, official release can always be found here: ftp://ftp.gnome.org/pub/GNOME/sources/gnome-speech/

At the time of this writing, the latest version is 0.4.7; However, as updates occur with relative frequency, it is a good idea to always confirm that you are getting the most current release before downloading. After downloading, extract the archive with a command similar to the following:

tar -xvf gnome-speech-0.4.7.tar.gz

If you want the most up to date version available, the current source can be obtained via subversion. Assuming you have the subversion program installed, change to the directory where you want the source to be copied, and then issue the following command (on Solaris, make sure you've installed CBE and have executed . /opt/jdsbld/bin/env.sh in your bash shell first):

svn co http://svn.gnome.org/svn/gnome-speech/trunk gnome-speech

This command will download the source, and place it in a subdirectory of the current directory called gnome-speech.

Now, we are ready to begin the rebuild process itself. There's a little more work you might need to do, though, to set up your build environment. For Ubuntu, execute the following command:

apt-get build-dep gnome-speech

For Solaris, make sure you set up CBE and execute . /opt/jdsbld/bin/env.sh in your bash shell.

Now, change to the directory containing the gnome-speech source. If you downloaded a tar ball, the name of this directory will vary depending on the version you downloaded. in either case, the command should be similar to the following:

cd gnome-speech

If working from a tar ball, you will already have a configure script, so to run it, type:

./configure --prefix=/usr

If you got your source from subversion, type:

./autogen.sh --prefix=/usr

Once the configure process is complete, rebuild and reinstall gnome-speech by typing the following command as root:

make install

You should then be able to run the test-speech application to determine if you were successful or not. If test-speech won't speak, Orca won't speak, and you should move on to the troubleshooting section (next).

Troubleshooting

So...Orca's not speaking to you? Well, have you tried sending it some flowers or giving it some fish? Seriously, when Orca is not speaking, it's usually a problem with gnome-speech, and usually a driver has become hung for some bad reason. Here's some debugging strategies to try:

  1. This might be a festival configuration problem. The common solution to this is to make sure that localhost is the first entry in /etc/hosts:
    • 127.0.0.1 localhost localhost.localdomain

  2. Are you sure your speakers are hooked up, turned on, and the volume is turned up on the speakers themselves?
  3. Are you sure you've turned the software volume up? Can the system make sounds?
  4. Does your speech engine work? For example, if you are a festival user, try running "festival" on its own. If you are a FONIX DECtalk user, try running "say" on its own, and so on. If these won't speak, gnome-speech won't speak, and Orca won't speak.
  5. Try running the gnome-speech 'test-speech' utility. If you cannot get this to speak, Orca will not speak.
  6. If things spoke at one time, but are no longer working, try doing a 'ps -fax | grep synthesis-driver' or 'ps -elf | grep synthesis-driver'. Kill the associated process and try 'test-speech' again. If speech works again, then a driver got hung. :-(

  7. Do any speech services show up with the gnome-speech 'test-speech' utility?
    1. If not, you might not have any gnome-speech drivers installed. Look to see if there are any /usr/lib/bonobo/servers/GNOME_Speech_SynthesisDriver_* files. If there are no files, you have no drivers.

    2. If there are files, then try running one of the drivers by hand from a terminal window. You'll know the location and name of the driver by looking for the type="exe" line in the relevant /usr/lib/bonobo/servers/GNOME_Speech_SynthesisDriver_* file.

      1. Make sure you kill all running synthesis-drivers before running the driver by hand.
      2. See if there are any errors when you run the driver by hand in a terminal window. If there are no errors, then run test-speech from another terminal window. See if you can make test-speech talk. If you can, the problem may be that Bonobo is not starting the driver for some odd reason. If you still cannot make test-speech talk, it's probably time to jot down any errors you might be seeing and ask us for help.


JonReagan/UbuntuGnomeSpeech (last edited 2008-02-03 14:47:32 by anonymous)