修复win7 TTS
网上有不少修复程序和教程 我试了 不好用. 安装了 发音组件及 huihui语音包 无法调用
但是 有个3.79M的修复程序 里面包括 common files文件夹,regsvr.bat,sapi.cpl,speech.reg,speech64.reg 文件
运行bat后 ,打开 sapi.cpl 能够看到 2个语音引擎 Microsoft Lili - Chinese (China) 和 Microsoft Anna - Englis (United States)
这个lili能够发音!!
后面发现 这是 32位的属性面板,在win7 64位系统中 无法调用.
查询注册表发现 这两个引擎安装在32位的 Wow6432Node 下面,而64位系统 的 语音在 64位下项下面
既然32位能发声,那就是64位注册表下的内容和安装的huihui语音包没有匹配,于是
我把 C:\Program Files (x86)\Common Files\microsoft shared\Speech\Tokens\ 项下的 语言包 都 复制到了 64位的 C:\Program Files \Common Files\microsoft shared\Speech\Tokens\项下,
同时 使用 另一个修复包 修复了一下注册表,这是 huihui 语言包 好用了
但是 同时安装的 TTS_MS_en-US_ZiraPro_11.0 语言包 还是不显示
于是查询了 huihui的语言包 发现 它在注册表 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens\]项下
而 Zirapro 则在 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech Server\v11.0\Voices\Tokens\]项下
于是 把该路径下的 TTS_MS_en-Us_ZiraPro_11.0项整个复制到[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens\]项下 完成了修复
总结TTS不能用 主要是 安装路径 语言包 默认安装到了x86文件夹下,而注册表 又安装到了64位项下,形成了错位, 同时 注册表项也有错误,系统读取的是 Microsoft\Speech,而安装的注册表是Microsoft\Speech Server ,连错2次.
希望对网友有帮助!欢迎交流.
浙公网安备 33010602011771号