当前位置 : 主页 > 编程语言 > 其它开发 >

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

来源:互联网 收集:自由互联 发布时间:2022-05-26
介绍之前首先推荐一个非常不错的网站,http://www.openso.net/ 开发之前需要下载两个开发的sdk包以及语言包,下载地址:http://www.openso.net/querytool?index=1word=,安装SpeechSDK51.exe,SpeechSDK51LangP

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

开发之前需要下载两个开发的sdk包以及语言包,下载地址:http://www.openso.net/querytool?index=1&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.最后运行程序,如下图所示:

 

上一篇:LINQ to SQL、NHibernate比较(一)
下一篇:没有了
网友评论