Speech Synthesis Markup Language (SSML) is an XML-based markup language for speech synthesis applications. It is a recommendation of the W3C's Voice Browser Working Group. SSML is often embedded in VoiceXML scripts to drive interactive telephony systems. However, it also may be used alone, such as for creating audio books. For desktop applications, other markup languages are popular, including Apple's embedded speech commands, and Microsoft's SAPI Text to speech (TTS) markup, also an XML language. It is also used to produce sounds via Azure Cognitive Services' Text to Speech API or when writing third-party skills for Google Assistant or Amazon Alexa.

SSML is based on the Java Speech Markup Language (JSML) developed by Sun Microsystems, although the current recommendation was developed mostly by speech synthesis vendors. It covers virtually all aspects of synthesis, although some areas have been left unspecified, so each vendor accepts a different variant of the language. Also, in the absence of markup, the synthesizer is expected to do its own interpretation of the text.

Speech Synthesis Markup Language

Example

Here is an example of an SSML document:

Speech Synthesis Markup Language

<?xml version="1.0"?>

<speak xmlns="http://www.w3.org/2001/10/synthesis" xmlns:dc="http://purl.org/dc/elements/1.1/" version="1.0"> <metadata> <dc:title xml:lang="en">Telephone Menu: Level 1</dc:title> </metadata>

Speech Synthesis Markup Language

<p>

<s xml:lang="en-US">

<voice name="David" gender="male" age="25">

For English, press <emphasis>one</emphasis>. </voice> </s> <s xml:lang="es-MX"> <voice name="Miguel" gender="male" age="25"> Para español, oprima el <emphasis>dos</emphasis>. </voice> </s> </p>

</speak>

Features

SSML specifies a fair amount of markup for prosody, which is not apparent in the above example. This includes markup for pitch contour pitch range rate duration volume

See also

Pronunciation Lexicon Specification (PLS) Speech Recognition Grammar Specification (SRGS) Semantic Interpretation for Speech Recognition (SISR) SABLE speech synthesis markup language, intended to combine SSML, STML, and JSML

References

External links

W3C SSML 1.1 Recommendation

W3C SSML 1.0 Recommendation

Introduction to SSML on XML.com

Speech synthesis

XML-based standards

World Wide Web Consortium standards

Markup languages

2004 introductions