看起来微软语音合成问题与中文(慧慧)仍然存在。 经过一些网上研究,很少有人尝试修复它,我找不到任何解决方案。
设置
Windows 10 (x32) (tested on x64 too)
SDK 11
Visual Studio 2017
错误
InnerException = {"Catastrophic failure (Exception from HRESULT: 0x8000FFFF (E_UNEXPECTED))"}
Message = "Speak error '8000FFFF'."
Source = "Microsoft.Speech"
麻烦的代码
using Microsoft.Speech.Synthesis;
using (var ss = new SpeechSynthesizer())
{
ss.SetOutputToWaveFile("output.wav");
ss.SelectVoice("Microsoft Server Speech Text to Speech Voice (zh-CN, HuiHui)");
ss.Speak("我喜欢和很多珍珠奶茶"); // speak error here
}
此代码使用英语(en-US,Helen)完美运行。
修复尝试失败
Download "chsbrkr.dll" & "chtbrkr.dll"
Add it to "Program Files((x86))\Common Files\Microsoft Shared\Speech\TTS\v11.0"
有人以某种方式成功运行此脚本还是找到了替代方案? 谢谢。
以前发布在同一主题上
Chinese TTS fails, while English works TTS for Chinese is throwing SAPI ERROR E_FAIL ASP.Net and Microsoft.Speech error with Chinese
尝试注册这两个dll“chsbrkr.dll”和“chtbrkr.dll”。
尝试以下步骤并检查 -
1)将两个dll粘贴到“C:\ Windows \ System32”目录中。如果您使用的是64位操作系统,请将两个dll粘贴到“C:\ Windows \ sysWOW64”中(复制需要管理员优先权)。
2)在命令提示符下使用以下命令在系统中注册两个dll(以管理员身份运行)
执行此操作后尝试重新启动系统,然后尝试运行您看到“发出错误”的应用程序。
希望这能解决问题。
您好,当您使用excel 2013并尝试在Visual Basic中创建一个宏时,会出现类似的错误
我正在尝试下一个代码:
Sub Main()
Dim speech As New SpVoice
Dim i As Long
Dim oFileStream As New SpFileStream
Const SAFT48kHz16BitStereo = 30
Const SSFMCreateForWrite = 3
对于i = 1到5
Set speech.Voice = speech.GetVoices.Item(3)
speech.Speak (Cells(i, 6))
Application.Wait (Now() + TimeValue("00:00:02"))
下一个我
结束子