[英]How to get and use full installed text-to-speech languages list?
Windows 10語音合成中確實發生了一些奇怪的事情。
首先,即使Windows在Metro和Classic控制面板中顯示的安裝語言也不同。
Metro應用程序顯示5種已安裝的語言,而經典控制面板僅顯示3種。
我需要使用Microsoft Pavel語言,但我的應用程序根本看不到它!
SpeechSynthesizer ss = new SpeechSynthesizer();
var installed_voices = ss.GetInstalledVoices();
for (int i = 0; i < installed_voices.Count; i++)
Console.WriteLine(GetVoiceInfoDesc(installed_voices[i].VoiceInfo));
static string GetVoiceInfoDesc(VoiceInfo vi)
{
return vi.AdditionalInfo["Name"] + " (ID = " + vi.AdditionalInfo["Language"] + ", " + vi.AdditionalInfo["Age"] + ", " + vi.AdditionalInfo["Gender"] + ", " + vi.Culture + ")";
}
上面的代碼僅顯示3種已安裝的語言。
另外,當我使用
ss.SelectVoiceByHints(VoiceGender.Male, VoiceAge.Adult, 0, CultureInfo.CreateSpecificCulture("ru-RU"));
我仍然收到Irina聲音的聲音
我測試了Pavel的聲音,它已經安裝好並且可以說些什么了。
我使用.net 4.0 C#。 有什么想法嗎?
我遇到了同樣的問題,嘗試了多種解決方案,但沒有一個起作用。 我的要求是不要在Windows 10中找到特定的聲音,因此我尋找其他資源並找到了它 。
我嘗試安裝其中的一些,但我的應用程序將其識別為已安裝,並且它們按預期工作。 也許您可以在那里找到一些適合您需求的聲音。 祝好運!
由於某些未知原因,某些語言的問題只能在Metro應用中使用,而無法通過SAPI
看到。
我們可以通過更改注冊表來解決此問題。
這是我從Internet某處獲取的Windows 10 x64 Pavel聲音的修復示例:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Speech\Voices\Tokens\MSTTS_V110_ruRU_PavelM]
@="Microsoft Pavel Mobile - Russian (Russia)"
"419"="Microsoft Pavel Mobile - Russian (Russia)"
"CLSID"="{179F3D56-1B0B-42B2-A962-59B7EF59FE1B}"
"LangDataPath"=hex(2):25,00,77,00,69,00,6e,00,64,00,69,00,72,00,25,00,5c,00,53,\
00,70,00,65,00,65,00,63,00,68,00,5f,00,4f,00,6e,00,65,00,43,00,6f,00,72,00,\
65,00,5c,00,45,00,6e,00,67,00,69,00,6e,00,65,00,73,00,5c,00,54,00,54,00,53,\
00,5c,00,72,00,75,00,2d,00,52,00,55,00,5c,00,4d,00,53,00,54,00,54,00,53,00,\
4c,00,6f,00,63,00,72,00,75,00,52,00,55,00,2e,00,64,00,61,00,74,00,00,00
"VoicePath"=hex(2):25,00,77,00,69,00,6e,00,64,00,69,00,72,00,25,00,5c,00,53,00,\
70,00,65,00,65,00,63,00,68,00,5f,00,4f,00,6e,00,65,00,43,00,6f,00,72,00,65,\
00,5c,00,45,00,6e,00,67,00,69,00,6e,00,65,00,73,00,5c,00,54,00,54,00,53,00,\
5c,00,72,00,75,00,2d,00,52,00,55,00,5c,00,4d,00,31,00,30,00,34,00,39,00,50,\
00,61,00,76,00,65,00,6c,00,00,00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Speech\Voices\Tokens\MSTTS_V110_ruRU_PavelM\Attributes]
"Age"="Adult"
"DataVersion"="11.0.2013.1022"
"Gender"="Male"
"Language"="419"
"Name"="Microsoft Pavel Mobile"
"SharedPronunciation"=""
"Vendor"="Microsoft"
"Version"="11.0"
自述說:“感謝Nonna Lavrukhina”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.