[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Using emacspeak with speech-dispatcher

T. V. Raman writes:
 > If you would like the above code to remain useful,
 > you'll need to factor out the SSML bits from the cepstral bits.
 > You and I had discussed how to implement SSML support -- not sure
 > if that discussion made it to the list archives;
 > But essentially you will need to contribute two files:
 > 0)  ssml-voices.el  An implementation of the mapping from
 >     personalities to SSML codes
 > 1)  ssml-tts      An associated TTS server 
 > In addition, you'll need to write the functions that configure
 > the speech layer to use the two -- that code would  be integrated
 > into dtk-speak by me, something I'll do once the other bits are
 > done.

Hi Raman,

I beleive this is what I have done already. Based on our discussions a
couple of years ago, I have attempted to follow your suggestions as
closely as I could. If something isn't correct, let me know. The tar
archive currently contains -

In directory lisp -

	- ssml-voices.el = all the SSML mapping stuff - nothing specific
      to cepstral

	- generic-voices.el = essentially do nothing type file which I use
      to get clean text out of emacspeak should I wish to use some
      speech server at a very basic level (ie. no voice locking). This
      is not needed for the ssml or cepstral stuff - just a quick and
      dirty interface method potentially useful for generic speech

	- dtk-speak.el - patched to provide matching start/end tags if
      required (based on current server) and added some bits to allow
      the cepstral generic and cepstral ssml server to be selected in
      the same manner as other speech servers using the .servers file
      etc. I attempted to make things as consistent as possible, so I
      made the necessary changes to this file so that the cepstral
      speech servers could be treated in exactly the same way as all
      other speech servers. 

	- dectalk-voices.el and outloud-voices.el = These files reference
      other *-voices.el files, so I just added the ssml-voices.el for
      consistency - no other changes are made to these files.
	- Makefile - updated the makefuile so that it could integrate into
      emacspeak like the other files and you could use make to build
      and install the whole emacspeak package etc. 

In the servers directory 

	- theta - the cepstral tts tcl interface equivelent to dtk-soft or
      any of the other tcl scripts. Uses the tts-lib.tcl library.

	- theta-ssml - tcl script which supports the ssml version of the

	- cepstral-theta - directory containing the shared library used by
      the tcl scripts, just like dtktcl.c et al. There are two shared
      libraries - tcltheta.c and tclthetassml.c

At this stage, the Cepstral stuff only supports their old theta API and
therefore will not work with their newer version (called
swift). However, I still think the ssml-voices.el and
generic-voices.el and modifications to dtk-speak.el might be very
useful as it would then be relatively straight forward to add any
synth support for TTS engines which either support SSML or a basic
generic interface. 

Also available on my website is a patched version of the C sources for
the software dectalk (dtktcl.c). The one bundled with emacpseak has
been broken since version 5 of the software dectalk came out. It might
be worth replacing or adding it as well.


To unsubscribe from the emacspeak list or change your address on the
emacspeak list send mail to "emacspeak-request@cs.vassar.edu" with a
subject of "unsubscribe" or "help"

Emacspeak Files | Subscribe | Unsubscribe | Search