Dispatcher bug: espeak 1.31, ssml and ampersand

C.M. Brannon cmbrannon at cox.net
Sat Jan 26 22:35:17 CET 2008


Hi folks,
I found a bug in Speech Dispatcher's espeak module.  The bug is only
triggered  when I use a punctuation level of "all".  If spoken text
contains an ampersand character, espeak says "l angle stroke speak r
angle".   Here is an SSIP message that reproduces the bug:

---begin SSIP commands---
SET SELF OUTPUT_MODULE ESPEAK
SET SELF PUNCTUATION ALL
SPEAK
K&R
.
QUIT
---end SSIP commands---

I think that the fix is to remove the espeakSSML flag 
from the "int flags = " line in the module_speak function.  Next,
process the input with module_strip_ssml, as is done in the ibmtts
module.
That is just a quick fix.  It might not even be the right thing to
do, because ESpeak does support ssml input.  Instead, characters like
ampersand  should be properly transformed to ssml entities, such as
&, before they are sent to ESpeak.

Thoughts?
-- Chris



More information about the Speechd mailing list