ISpTTSEngine (SAPI 5.3)
The SAPI speech synthesis (text-to-speech, or TTS) engine implements the ISpTTSEngine interface.
ISpTTSEngine::Speak is the primary method called by SAPI to perform speech rendering. SAPI, rather than the engine, performs XML parsing of the input text stream. The Speak method receives a linked list of text fragments with their associated XML attribute states. The Speak method also receives a pointer to the ISpVoice ISpTTSEngineSite interface. The TTS engine uses this interface to queue events and to write the output audio data.
Even though SAPI 5 is a free–threaded architecture, TTS engine instances will always be called by SAPI on a single thread. TTS engines are never directly accessed by applications. SAPI ensures that all parameter validation and thread synchronization has been performed properly before calling the TTS engine. All calls to the TTS engine in the release build of SAPI are within a try or except block to protect applications from faulting.
Methods in Vtable Order
|Speak||Renders the specified text fragment list in the specified output format.|
|GetOutputFormat||Queries the engine about a specific output format.|