Dear Friends: This email is to document the steps I took to enable Emacspeak to use ViaVoice on my 64-bit Fedora 20 (beta) laptop. ViaVoice is separately available as a proprietary TTS product called Voxin today, and has previously been sold under the name TTSynth. It has also been known by the name Eloquence on certain operating systems. I document these steps here because several script edits were needed. Perhaps this can be obviated in the future by introducing conditional statements in these scripts? Also, it was necessary to manually acquire and copy the 32bit TCL executable saving it to a filename the script expected. This last action is probably the most arcane step I had to take. Perhaps Fedora should be encouraged to include the 32bit TCL binary in its 64bit package--because simply installing the 32bit TCL rpm is insufficient! These steps do not include acquisition, installation and proper configuration of ViaVoice. Rather, it is presumed this TTS engine has been correctly installed and is known to be functioning. NOTE: Once installed, it is possible to use this TTS engine with Emacspeak in one console session while also using Speakup, through the Speakup Connector, in any number of other console sessions without unmanageable conflict. I have NOT, however, been successful in using this engine with Emacspeak (or Speakup) and Orca via Speech-Dispatcher. I note that I am using this TTS engine with alsa, not with pulseaudio. I have no knowledge of whether these steps will allow this TTS engine to be used with pulseaudio. On my systems pulseaudio is always terminated with extreme prejudice, i.e. rm -f /usr/bin/pulseaudio touch /usr/bin/pulseaudio chmod 444 /usr/bin/pulseaudio Lastly, please note that all commands provided in this message are assumed executed as root, including those immediately preceding. My thanks to T.V. Raman, Jason White, and Bill Acker for helping me discover and implement all the relevant details required to make Emacspeak work with ViaVoice over alsa on Fedora 20. ------------------------------------------------------------------------------- Step 1: Install the 32bit tclx libraries. yum install tclx.i686 Step 2: Acquire and Install the 32bit TCL executable In a temporary directory somewhere: mkdir tmp cd tmp a.) Acquire the 32bit rpm package yumdownloader tcl.i686 b.) Use cpio2rpm to populate a file hierarchy with all files from the tcl.i686 rpm. In the command below, [filename.rpm] is the tcl.i686 rpm just downloaded in substep a.) above: rpm2cpio [filename.rpm] |cpio -imd | c.) Identify the 32bit TCL binary and install it to an appropriate system directory. We are not surprised to find this executable in usr/bin/ following substep b.) above. We place this file in /usr/local/bin/ because it's the identified locus of user installed and managed binaries. We also rename this file as we copy it, because our Emacspeak speech server script, /usr/share/emacs/site-lisp/emacspeak/32-outloud expects to find it in /usr/bin/ and expects it to be called tclsh8.4_ia32--even though it's from a TCL version 8.5: cp -a usr/bin/tclsh8.5 /usr/bin/tclsh8.4_ia32 NOTE: Do not make the mistake of trying to copy the symbolic link called tclsh. Also beware that a TCL version value is encoded in the executable's filename, so the exact filename you will copy may vary. d.) Insure your copied executable will be executable by all: chown root:root /usr/bin/tclsh8.4_ia32 chmod 755 /usr/bin/tclsh8.4_ia32 e.) It is now safe to remove the temporary directory, with all included files, you used in the substeps above: cd .. rm -rf tmp Step 3: Insure required files are present. If you installed Emacspeak from the Fedora rpm, you already have /usr/share/emacs/site-lisp/emacspeak/servers/linux-outloud/atcleci.so. However, you do not have two essential script files in /usr/share/emacs/site-lisp/emacspeak/servers/. Obtain the two script files 32-outloud and outloud from the Emacspeak sbn repository, or from an Emacspeak tarball, and place in the servers directory. If you obtained Emacspeak from sbn (preferred by long-time Emacspeak users), or from the Emacspeak tarball, you will find you already have these files. Step 4: Edit your Emacspeak speech server script cd /usr/share/emacs/site-lisp/emacspeak/servers a.) Edit line 45 of 32-outloud to point to the .so file where Fedora locates it. As of Fedora 20 this should read: load /usr/lib/tcl8.5/tclx8.4/libtclx8.4.so b.) Edit line 49 of 32-outloud to reference the 32bit Fedora TCL package name. As of Fedora 20 this is: package require Tclx -- Janina Sajka, Phone: +1.443.300.2200 sip:email@example.com Email: firstname.lastname@example.org Linux Foundation Fellow Executive Chair, Accessibility Workgroup: http://a11y.org The World Wide Web Consortium (W3C), Web Accessibility Initiative (WAI) Chair, Protocols & Formats http://www.w3.org/wai/pf Indie UI http://www.w3.org/WAI/IndieUI/ ----------------------------------------------------------------------------- To unsubscribe from the emacspeak list or change your address on the emacspeak list send mail to "email@example.com" with a subject of "unsubscribe" or "help".
If you have questions about this archive or had problems using it, please send mail to:firstname.lastname@example.org No Soliciting!
Emacspeak List Archive | 2010 | 2009 | 2008 | 2007 | 2006 | 2005 | 2004 | 2003 | 2002 | 2001 | 2000 | 1999 | 1998 | Pre 1998
Emacspeak Files | Emacspeak Blog