Skip to content

SAPI 5 TTS XML to SSML translation

gexgd0419 edited this page Dec 30, 2023 · 2 revisions

The following table shows how this engine will translate SAPI 5 TTS XML into SSML.

SAPI XML SSML
<volume level="80"> <prosody volume="-20%">
<rate speed="5"> <prosody rate="+100%">
<pitch middle="5"> <prosody pitch="+25%">
<emph> <emphasize>
<spell> <say-as interpret-as="characters">
<silence msec="500"/> <break time="500ms"/>
<pron sym="h eh 1 l ow"> <phoneme alphabet="sapi" ph="h eh 1 l ow">
<bookmark mark="pos"/> <bookmark mark="pos"/>
<partofsp part="noun"> Not supported
<context id="date_mdy"> <say-as interpret-as="date" format="mdy">
<context id="date_year"> <say-as interpret-as="date" format="y">
<context id="number_cardinal"> <say-as interpret-as="cardinal">
<context id="number_fraction"> <say-as interpret-as="fraction">
<context id="phone_number"> <say-as interpret-as="telephone">
<context id="other_format"> <say-as interpret-as="other_format">
<sapi> Handled by SAPI
<voice required="Gender=Female"> Handled by SAPI
<lang langid="409"> Handled by SAPI

Note:

  • Volume and rate can also be affected by the global settings set with ISpVoice::SetVolume and ISpVoice::SetRate.
  • Other XML tags will be inserted into the SSML text as-is.