我已经安装了新SAPI5声音。 在语音程序的计算机设置为新的语音和可视可使用。 但我的程序无法找到它。 为了找到它,我使用的这部分代码,我用System.Speech.Synthesis
命名空间。
SpeechSynthesizer s = new SpeechSynthesizer();
foreach (InstalledVoice v in s.GetInstalledVoices())
{
st += v.VoiceInfo.Name+"\n";
}
MessageBox.Show(st);
发现的唯一的声音是微软安娜。 我对speeking代码如下:
s.SelectVoice("Eliska22k");//name of the voice is Eliska22k
s.Speak("ahoj");
我使用C#4和我的Windows Vista 32位。 哪里是我的错? 在代码中或其他地方?
编辑:请注册表值:
在HKEY_LOCAL_MACHINE \ SOFTWARE \微软\语音\声音
DefaultTokenId:HKEY_LOCAL_MACHINE \ SOFTWARE \微软\语音\声音\ TokenEnums \ Infovox桌面V2.2 \ Eliska22k
DefaultTTSRate:0
在HKEY_LOCAL_MACHINE \ SOFTWARE \微软\语音\声音\ TokenEnums \ Infovox桌面V2.2 \ Eliska22k
405:Eliska(捷克)SAPI5
CLSID:{F8E89351-F6B9-4C98-91F9-A967BA752655}
VoiceData:Eliska22k
在HKEY_LOCAL_MACHINE \ SOFTWARE \微软\语音\声音\ TokenEnums \ Infovox桌面V2.2 \ Eliska22k \属性
年龄:成人
AudioFormats 18
性别女
语言:405; 5
名称:Eliska22k