您的位置:首页 > 编程语言 > C#

用C#编写语音自动朗读机器人

2009-09-21 14:41 399 查看

用C#编写语音自动朗读机器人

介绍之前首先推荐一个非常不错的网站,http://www.openso.net/

开发之前需要下载两个开发的sdk包以及语言包,下载地址:http://www.openso.net/querytool?index=1& amp;word=,安装SpeechSDK51.exe,SpeechSDK51LangPack.exe,这里有个开发的帮助文档,下载地 址:http://www.openso.net/queryebook?index=1&word=。

SAPI SDK是微软公司免费提供的语音应用开发工具包,这个SDK中包含了语音应用设计接口(SAPI)、微软的连续语音识别引擎(MCSR)以及微软的语音合 成(TTS)引擎等等。目前的5.1版本一共可以支持3种语言的识别 (英语,汉语和日语)以及2种语言的合成(英语和汉语)。SAPI中还包括对于低层控制和高度适应性的直接语音管理、训练向导、事件、语法编译、资源、语 音识别(SR)管理以及TTS管理等强大的设计接口。

1.首先使用Tlbimp工具,将COM类型库中的类型定义转换为公共语言运行库程序集中的等效定义。

命令如下:

cd C:\Program Files\Common Files\Microsoft Shared\Speech\

Tlbimp sapi.dll /out: DotNetSpeech.dll

最后再通过ildasm工具来查看生成的DotNetSpeech.dll组件。


说明:过程会有一些异常产生,不过并无妨。
2.其次,新建一个win项目,将组件通过引用的方式导入到项目中,并编写以下少量的代码。

SpeechVoiceSpeakFlags spFlags = SpeechVoiceSpeakFlags.SVSFlagsAsync;
SpVoice v= new SpVoice();
v.Speak(this.txtContent.Text, spFlags);

3.最后运行程序,如下图所示:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: