Hi Chris, In the cases where we are not dealing with emacspeak specific issues, I would try to work with Jonathan Duddington, the author of espeak, to try and solve the problem upstream. Chris Brannon writes ("catalog of ESpeak TTS server issues"): > Here are some of the usability issues we've discussed. Initials in parens > indicate the person who first described the issue. > RDC = Robert Crawford, CMB = Chris Brannon, and LL = Lukas Loehrer. > > 1. Character echo may be unusable. (RDC). > 4. Occasional stutter when using word echo (CMB). I would guess that these are audio playback issues. portaudio has similar problems when espeak is used in gnome-speech. > Fix 5: Send something other than SSML to ESpeak. Perhaps DECTalk commands > could be interpreted by the server? > I'm willing to work on this. It seems that espeak internally uses some kind of embedded commands to control at least some of the voice properties. The following is from translate.h: #define CTRL_EMBEDDED 0x01 // control character at the start of an embedded command I have not managed to find out if these kinds of control sequences can also be used in the input text. > 6. Pauses around punctuation disturb the flow of speech. Reading source code > is difficult (LL). This one is reproducible with the espeak command line tool and I just sent a message to Jonathan about it. > Fix 6: Let the server change punctuation marks to words before synthesis. I would do that only as a last resort. > The drawback is that we lose ESpeak's ability to pronounce punctuation in > a language-specific way. The server needs punctuation tables for each > language that Emacspeak supports. Currently, those are English and French. Actually, it supports many more. You just have to uncomment them in the tclespeak.cpp file. Look for "ThePreferredLanguages" in that file. Most are commented out so that you do not have to cycle through dozens of languages if you are only using a few. I use emacspeak with English and German voices of ViaVoice. Emacspeak already has more than one character replacement mechanism in place (in dtk-speak.el and dtk-unicode.el). They work well for English, but it is hard to get them to be language sensitive, because emacspeak is oblivious to the language setting in the tts server. Ideally, the synthesizer language would be a buffer local property like speech rate or punctuation setting. I have whined about this before, but the fact that I have not tried to implement it in all that time probably indicates that the current solution is "good enough". Best regards, Lukas ----------------------------------------------------------------------------- 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 | 2007 | 2006 | 2005 | 2004 | 2003 | 2002 | 2001 | 2000 | 1999 | 1998 | Pre 1998
Emacspeak Files | Emacspeak Blog