TtsEngineSsml Class

Abstract base class to be implemented by all text to speech synthesis engines.

Namespace: System.Speech.Synthesis.TtsEngine
Assembly: System.Speech (in system.speech.dll)

public abstract class TtsEngineSsml
public abstract class TtsEngineSsml
public abstract class TtsEngineSsml
Not applicable.

To construct a custom text to speech engine using the infrastructure an application must always implement a class derived from the abstract base class TtsEngineSsml.

A properly registered implementation of TtsEngineSsml can then be used as a SynthesizerVoice by System.Speech.Synthesis name space based applications.

Objects inheriting from TtsEngineSsml must override the following members: TtsEngineSsml, AddLexicon, RemoveLexicon, GetOutputFormatandSpeak.

The most important member of the TtsEngineSsml class to be implemented is the Speak method.

The Speak method is called by the infrastructures text parser receiving:

  1. A reference to the ITtsEngineSite interface, which provides access to services such as even queuing and writing audio output.

  2. An array of TextFragment instance produced by the from Speech Synthesis Markup Language (SSML) input. In addition to text to be rendered as speech, the parsing of the SSML stores information about the requested attributes of the speech in a T:System.Speech.Synthesis.TtsEngine.FragmentState instance associated with each incoming TextFragment object.

A speech synthesizer application can optionally make requests for a specified output format by implementing GetOutputFormat to be called by the when it tries to provide the correct audio output.

And implementer can also provide support for managing external definitions of pronunciations, or lexicons, by their implementation of AddLexicon and RemoveLexicon.


Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0

Community Additions