emacspeak-ss - Emacspeak speech servers for several synthesizers OVERVIEW The Emacspeak by T. V. Raman software package provides speech output for Emacs, and includes "speech servers" for the DECtalk speech synthesizers. This package provides servers for several additional synthesizers: DoubleTalk PC and AT from R. C. Systems Braille 'n Speak, Type 'n Speak, and Braille Lite from Blazie Engineering Accent SA Apollo 2, JUNO, and JUNO-sp from Dolphin. Spanish ciber 232 Spanish ciber 232 Plus Spanish PC Hablado notebook The servers are named "doubletalk", "braillenspeak", "accent", "apollo", "ciber", and "hablado" respectively. None of these programs are normally run by the user directly. Instead, they are run by Emacs. That is: Emacs runs the emacspeak code, which executes tcl, which interprets the server code. HISTORY T. V. Raman wrote the interface between his Emacspeak and the DECtalk in TCL. I have adapted it for the DoubleTalk, LiteTalk, and Braille 'n Speak synthesizers. Jack Chen has adapted it for the Accent. Oscar Fernández Arcis adapted it for the ciber and PC Hablado devices. T. V. Raman bears no responsibility for this code. Questions, problems, or suggestions should be sent to the server author (Jack, Oscar, or me), not him. For the most recent version of this code, check the BLinux FTP archives: ftp://leb.net/pub/blinux/emacspeak/blinux You can also look on my web page: http://www.mv.com/ipusers/vanzandt/ Matt Campbell has RPMs here: http://www.crosswinds.net/~mattcamp/emacspeak.html See also the README files for the individual servers. For general information on Emacspeak, please consult the Emacspeak home page: http://www.cs.cornell.edu/Info/People/raman/emacspeak/emacspeak.html There is also an Emacspeak mailing list. To subscribe, send a message to: emacspeak-request@cs.vassar.edu with a subject of: subscribe PREPARATION Before you can use any of these servers, you have to install emacspeak. If you have a recent Slackware Linux cdrom, you will find an emacspeak package in the /contrib directory. You can install and configure it with commands something like this: # installpkg /cdrom/contrib/emacspeak.tgz # /var/adm/setup/setup.emacspeak There are also Red Hat and Debian packages at the usual ftp sites for those distributions, at leb.net, and on my web page (see above). INSTALLATION Configure the source code with the command ./configure If you want the files installed in some place other than the default of /usr/share/emacs/site-lisp/emacspeak/, you may specify a value for "prefix". The default is equivalent to "./configure --prefix=/usr". Build with make For most synthesizers, this only combines the synthesizer-independent code with the synthesizer-specific code. The servers are implemented in tcl which needs no compilation. The exception is the apollo, which needs a small helper program written in C. Install by becoming the superuser and typing make install This copies the servers into /usr/share/emacs/site-lisp/emacspeak/. TESTING You have to set the environment variable DTK_PROGRAM to point to the correct server before you start. For bash, you may use one of these in .profile: export DTK_PROGRAM=doubletalk export DTK_PROGRAM=braillenspeak export DTK_PROGRAM=accent For csh, use one of these in .login: setenv DTK_PROGRAM doubletalk setenv DTK_PROGRAM braillenspeak setenv DTK_PROGRAM accent You can not just set DTK_PROGRAM to the full path to the server. The path must be relative to /usr/share/emacs/site-lisp/emacspeak/ (or wherever emacspeak is installed). If you want to test a server before installing it, you may use something like this: DTK_PROGRAM=../../../../../home/jrv/speech/emacspeak-ss-0.3/doubletalk Under Linux, the DoubleTalk server uses the first of the following devices: the value of the environment variable DTK_PORT if it is set, or /dev/dtlk if it exists and can be read from and written to, or /dev/ttyS0. The other servers use the first of the following devices: the value of the environment variable DTK_PORT if it is set, or /dev/ttyS0. If you connect the synthesizer to one of the first four serial ports (/dev/ttyS0 through /dev/ttyS3), turn it on, and execute this script: find-ss then the synthesizer should speak the name of the port. If you have a synthesizer connected to a serial port other than the first one (/dev/ttyS0 under Linux, which is COM1 under DOS), then set DTK_PORT. For example, for the second serial port, which is COM2 under DOS, you would use this: export DTK_PORT=/dev/ttyS1 You may want to add this line to .profile in your home directory, or /etc/profile so all users inherit those environment settings. With csh you could put setenv DTK_PORT /dev/ttyS1 in .login . If the port is set up for the right speed, you can check the connection and port number with echo under bash: echo $'this is a test\r' >/dev/ttyS1 (When text in single quotes is preceded by a dollar sign, bash expands escape sequences in the text. Here, I am using this feature to generate a carriage return). You can similarly test the internal DoubleTalk like this: echo $'this is a test\r' >/dev/dtlk Start Emacspeak with the command emacspeak which is a shell script installed in /usr/local/bin or /usr/bin. PROBLEMS Neither the Braille 'n Speak nor the Accent synthesizers have tones. If other things are not working, please review the file TROUBLESHOOTING first. If that does not help, please let me know. For problems with the Accent server, please also write to Jack Chen . When you write, please include the output of the "testit" script, if possible. Otherwise, include as many of these as you can: Linux distribution (Red Hat, Slackware, Debian, custom, etc.) Linux kernel version emacspeak version number emacspeak-ss version number synthesizer type (e.g. DoubleTalk PC or LT), serial number, and ROM version number. - Jim Van Zandt