[Microsoft代理程式從 Windows 7 開始已被取代,而且可能無法在後續版本的 Windows 中使用。]
若要在您的程式代碼中使用特定語音引擎,請使用代理程式 API 來設定引擎。 針對語音輸入引擎,請使用 SRModeID,指定引擎的模式識別碼。 不過,請注意,必須安裝引擎。 若要判斷引擎是否存在,您可以查詢 SRModeID。 引擎必須符合角色的 LanguageID 設定。 例如,您無法將 SRModeID 設定為德文語音辨識引擎模式識別碼,其字元 LanguageID 為法文。
語音輸入引擎模式標識碼
| 聲音 | 模式標識碼 |
|---|---|
| Microsoft語音辨識引擎 v4.0 | {D8905400-B5C8-11D0-B968020AFDB1B9C} |
在您嘗試為應用程式中的 Command 物件定義語音參數的文法之前,請先檢查並設定字元的 LanguageID 和 SRModeID。 也請考慮檢查瀏覽器或系統語言,讓您可以確定符合用戶的設定。 如果您嘗試為引擎不相符的語言定義文法,引擎可能會失敗。
您可以使用預設語音輸出引擎的模式 ID 偏好設定來編譯 TTS 輸出的字符集。 在載入角色時,如果引擎已安裝且符合角色的 語言ID,Agent 將嘗試載入語音輸出的模式ID。 如果引擎不存在,或具有不同的 LanguageID,Agent 會嘗試載入第一個模式識別符,它會發現該標識符符合字元 LanguageID,但仍會設定字元的編譯速度和音調設定。
請注意,由於所有Microsoft代理程式提供的字元都會編譯為使用 Lernout & Hauspie TruVoice 美國英文引擎作為預設語音輸出引擎,因此會針對此語言和引擎調整字元的速度和音調設定。 因此,當使用其他語言的 TTS 引擎或其他的 TTS 引擎時,角色可能無法以最佳的音調或速度說話。 雖然您的應用程式或網頁無法撰寫 Pitch 和 Speed 屬性值,但您可以在輸出文字中包含 Pit (pitch) 和 Spd (speed) 標籤,以暫時變更特定語句的音調和速度。 不過,使用 Pit 和 Spd 標籤並不會變更 音高 和 速度 屬性。 如需詳細資訊,請參閱 Microsoft代理程式控制編程 和 Microsoft代理程式語音輸出標記。
使用除了 L&H TruVoice 美國英文引擎以外的其他符合 SAPI 規範的 TTS 引擎時,您也需要安裝 SAPI 4.0a 運行時間二進位檔 (SPCHAPI.exe),並搭配 Microsoft Agent 提供的字元,以便引擎能被正確列舉。 從您的網頁,包含下列物件標籤,以自動安裝元件:
<OBJECT width=0 height=0
CLASSID="CLSID:0C7F3F20-8BAB-11d2-9432-00C04F8EF48F"
CODEBASE="#VERSION=4,0,0,0">
</OBJECT>
若要查詢或設定引擎的模式識別碼,請使用 TTSModeID。 透過 TTSModeID,您可以設定與字元 LanguageID不同的模式識別符。 例如,您可以將一個德國角色設置成使用法文的語音模式 ID 說話。 語音輸出引擎模式標識碼不僅會定義您使用的引擎,也會對應至引擎支援的特定語音。 您也可以使用 Microsoft 代理程式字元編輯器或 Microsoft 語音 SDK 檔中所包含的工具, 查詢系統上所安裝的 TTS 引擎模式識別符。
語音輸出模式識別碼
| 聲音 | 模式標識碼 |
|---|---|
| 成人女性#1、英語(美式)、L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273008} |
| 成人女性 #2,美國英語,L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273009} |
| 成人男性 #1、美式英文、L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273000} |
| 成人男性 #2,美式英語,L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273001} |
| 成人男性 #3、美式英語、L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273002} |
| 成人男性 #4、美式英語、L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273003} |
| 成人男性 #5、美式英文、L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273004} |
| 成人男性 #6、美國英文、L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273005} |
| 男性成人 #7、美國英語、L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273006} |
| 美國英語、成人男性 #8、L&H TruVoice | {CA141FD0-AC7F-11D1-97A3-006008273007} |
| 卡羅爾、英國英文、L&H TTS3000 | {227A0E40-A92A-11d1-B17B-0020AFED142E} |
| 彼得,英式英語,L&H TTS3000 | {227A0E41-A92A-11d1-B17B-0020AFED142E} |
| 荷蘭人琳達、L&H TTS3000 | {A0DDCA40-A92C-11d1-B17B-0020AFED142E} |
| 亞歷山大,荷蘭文,L&H TTS3000 | {A0DDCA41-A92C-11d1-B17B-0020AFED142E} |
| Véronique、法文、L&H TTS3000 | {0879A4E0-A92C-11d1-B17B-0020AFED142E} |
| 皮埃爾、法文、L&H TTS3000 | {0879A4E1-A92C-11d1-B17B-0020AFED142E} |
| 安娜,德國人,L&H TTS3000 | {3A1FB760-A92B-11d1-B17B-0020AFED142E} |
| 斯特凡,德文,L&H TTS3000 | {3A1FB761-A92B-11d1-B17B-0020AFED142E} |
| 芭芭拉,義大利,L&H TTS3000 | {7EF71700-A92D-11d1-B17B-0020AFED142E} |
| Stefano、義大利人、L&H TTS3000 | {7EF71701-A92D-11d1-B17B-0020AFED142E} |
| Naoko,日文,L&H TTS3000 | {A778E060-A936-11d1-B17B-0020AFED142E} |
| Kenji、Japanese、L&H TTS3000 | {A778E061-A936-11d1-B17B-0020AFED142E} |
| 新啊,韓文,L&H TTS3000 | {12E0B720-A936-11d1-B17B-0020AFED142E} |
| Jun-Ho,韓國人,L&H TTS3000 | {12E0B721-A936-11d1-B17B-0020AFED142E} |
| 朱利安娜,巴西葡萄牙語,L&H TTS3000 | {8AA08CA0-A1AE-11d3-9BC5-00A0C967A2D1} |
| 亞歷山大,巴西葡萄牙語,L&H TTS3000 | {8AA08CA1-A1AE-11d3-9BC5-00A0C967A2D1} |
| 斯維特拉納,俄羅斯,L&H TTS3000 | {06377F80-D48E-11d1-B17B-0020AFED142E} |
| 鮑裡斯、俄文、L&H TTS3000 | {06377F81-D48E-11d1-B17B-0020AFED142E} |
| 卡門,西班牙文,L&H TTS3000 | {2CE326E0-A935-11d1-B17B-0020AFED142E} |
| Julio、西班牙文、L&H TTS3000 | {2CE326E1-A935-11d1-B17B-0020AFED142E} |
注意
語音引擎的安裝 CLSID 與其模式識別碼之間有差異。 同樣地,語音引擎也有引擎標識碼,但此標識符不適用於代理程式 API。