Congratulations DJ Sures, for answering the question and has received an EZ-Credit award! Share what you have learned and create a tutorial to help others by clicking here.

Speech Synthesis Markkup Language

Assistance Requested

Help larschrjensen with their question and receive $10 of EZ-Credit to get more robots and parts from our store. The following information was provided about their previous efforts searching tutorials for a resolution.

Product: (click to view product details)

EZ-Builder Controls: (click to view manual page)

larschrjensen claims to have checked these sources:

I was wondering whether it is possible to use elements from the Speech Synthesis Markup Language to modify the speech output using EZ-script? Or if there are other markup options other than the ones already given in the Speech Settings Control?

I have found a few conversations, tutorials and activities that may help with your question. Take a look at these links. I've sorted them by what I believe to be most relevant but that is not always the case as I'm still learning.

Also, consider reviewing the Learn section for informative lessons and activities. Check it out!


no markup. You can create a plugin to do it


Right, that's what I thought. Thanks for the speedy reply!


Also... You can add the speech synthesis settings control ( and write your script like..



ControlCommand("Speech Settings", SetVoiceEmphasis, "Strong")

sayezbwait("I am speaking strong")

ControlCommand("Speech Settings", SetVoiceRate, "ExtraFast")

sayezbwait("Now i am speaking extra fast")

ControlCommand("Speech Settings", SetVoiceRate, "Slow")

sayezbwait("Now i am speaking super slow")


Yes I realize that. I was looking for a more fine-grained way with which to control the prosodic contours, and the breaks between strings. The method above is a bit too coarse for that. The SSML is a step in the right direction, so I was just wondering whether this is something that could be used in EZ-script.

However, using the SDK is perfectly fine, but thanks for the followup.


Great! Let me know if you have any questions about creating a plugin for this.


Based on my findings you can indeed use at least some SSML elements in EZ-Builder, it's been extremely useful when developing Dorian's voice!

Shame on you for not having more faith in your own amazing software! Winky

This works just fine if you're using either a Cepstral or CereProc voice:


#The </prosody> tag is only needed if you're going to make other changes mid-sentence, otherwise you can just use the first tag and don't need the second one after the string.

$VoiceStart = "<prosody pitch='-50%'><prosody rate='.40'>"
$VoiceEnd = "</prosody>"

SayWait($VoiceStart + "When I'm tired my voice gets very deep and I speak slowly" + $VoiceEnd)

Here's a video I made for those who prefer video format when learning:


Thanks for the tutorial @Sebediah!

I was thinking about purchasing a Cepstral voice just recently, this knowledge would definitely be handy when wanting to modify a voice with EZ-Script.


Thank you for your interesting tutorial.
My robot Artamus uses a Cepstral voice, and I was able to alter his voice using your examples.
Alexa has a hard time understanding him, maybe this will help. Either way this allows me to customize his voice.
Steve S


@Sebediah - you are absolutely awesome! Thank you for sharing this.