我自已以前做过一套,叫VoicePro,10M,COM接口,合成语音。
后来用过IBM的中文TTS用M$的DirectSpeech驱动,效果还可以,只是读英文时念字母,并且发布时,经常莫名其妙不发声了,烦了,又用回自己的ViocePro。
这套VoicePro是我在98年做的,大体思路是:
1.导入全拼输入法编码文件,让公司的MM找了本新华字典注上音调;
2.将不同拼单统计出来,连同e文字母,数字一并做成发音表,把不同声调分开,防止发音混乱;
3.找了个当播音员的MM将发音表读一遍,录音软件用Windows的"录音机"就可以;
4.找一个波形编辑软件,我用的是Creative专卡上的录音和编辑软件,分解波形,按拼音编码保存波形文件.WAV;
5.写段程序将编码表,波形数据合成波形数据文件;按汉字内码标定其波形数据在文件中的位置.
6.编写语音库,做成COM接口的动态库,将波形数据文件以资源的形式导入动态库内;
7.动态库内部处理多音字辨析,转义字符,从资源中提取发音波形,合成发音序列,采用异步方式输出.
8.主程序向VoicePro发送字符串,动态库读.动态库内采用线程驱动,资历源占用率极少.