Microsoft Corporation
October 1998
Download this document in Microsoft Word (.DOC) format (zipped, 6.4K).
Contents
Introduction
Installing a Speech Engine
Accessing a Speech Engine in Your Code
Microsoft provides a set of speech input (recognition) engines and speech output (text-to-speech or TTS) engines you can use with your Microsoft® Agent-enabled applications or Web pages. Use of these engines is subject to the Microsoft Agent license agreement and the supplemental addendum displayed when you install the engines. This license entitles you to distribute the engines, but only when using them through Microsoft Agent API and using a visible character.
This document describes the procedure for installing and accessing the speech engines supplied by Microsoft for use with Microsoft Agent. For speech engines supplied by other vendors, check your vendor's information for this information.
The Microsoft supplied speech engines can be installed by downloading the engines from the Downloads page at the Microsoft Agent Web site. When done using the Microsoft Internet Explorer you get the option to Run This Program From Its Current Location or Save This Program To Disk. If you choose Run This Program From Its Current Location, the engine will be installed directly. If, instead, you choose Save This Program To Disk, you can save the installation file to your disk. Opening this installation file will also install the engine.
For Web pages, you can author your page to automatically download install the engine by including an HTML Object tag on your page specifying the CLASSID and CODEBASE parameter.
<OBJECT WIDTH=0 HEIGHT=0 CLASSID="CLSID:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" CODEBASE="#VERSION=X,X,X,X"> </OBJECT>
For the CLASSID parameter, specify the CLSID for the installation file. For the CODEBASE, specify the engine's version number. If you are not downloading the engine from the Microsoft site, you need to also include a URL.
The following are the installation file CLSIDs for the Microsoft supplied engines.
Engine | CLSID | Version # |
---|---|---|
L&H TruVoice Text-To-Speech | B8F2846E-CE36-11D0-AC83-00C04FD97575 | 6,0,0,0 |
Microsoft Speech Recognition | 161FA781-A52C-11d0-8D7C-00A0C9034A7E | 4,0,0,0 |
The descriptions of programming interfaces in this document follow the conventions for Microsoft VBScript. However, they should be generally applicable to other languages as well.
To use a particular speech engine in your code, use the Agent API to set the engine. For speech input engines, use SRModeID, specifying the mode ID for the engine. However, note that the engine must be installed. To determine if the engine is present, you can query SRModeID. The engine must match the character's LanguageID setting. For example, you cannot set SRModeID to a German speech recognition engine mode ID for a character whose LanguageID is French.
Speech Input Engine Mode IDs
Voice | Mode IDs |
---|---|
Microsoft Speech Recognition Engine v4.0, | {D8905400-B5C8-11d0-B968-0020AFDB1B9C} |
Check and set the character's LanguageID and SRModeID in your code before you attempt to define grammar for the voice parameters of Command objects your application. Also consider checking the browser or system language so you can be certain to match your users' configuration. The engine may fail if you attempt to define a grammar for a language that the engine does not match.
A character set for text-to-speech (TTS) output can be compiled with a default speech output engine's mode ID preference. When the character is loaded, if the engine is installed and matches the character's LanguageID, Agent will attempt to load that mode ID for speech output. If the engine is not present or has a different LanguageID, Agent will attempt to load the first mode ID it finds that matches the character's LanguageID, but still sets the character's compiled speed and pitch setting.
To query for or set an engine's mode ID, use TTSModeID. With TTSModeID you can set a mode ID that is different from the character's LanguageID. For instance, you can set a German character to speak using a French mode ID. Speech output engine mode IDs not only define which engine you use, but also correspond to specific voices supported for an engine. You can also use the Microsoft Agent Character Editor or the tools included in the Microsoft Speech SDK to query for the mode IDs of TTS engines installed on your system.
Speech Output Mode IDs
Voice | Mode IDs |
---|---|
Adult Female #1, US English, L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273008} |
Adult Female #2, US English, L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273009} |
Adult Male #1, US English, L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273000} |
Adult Male #2, US English, L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273001} |
Adult Male #3, US English, L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273002} |
Adult Male #4, US English, L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273003} |
Adult Male #5, US English, L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273004} |
Adult Male #6, US English, L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273005} |
Adult Male #7, US English, L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273006} |
Adult Male #8, US English, L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273007} |
Note There is a difference between a speech engine's installation CLSID and its mode ID. Similarly, a speech engine also has an engine ID, but this ID is not applicable in the Agent API.