C#简单开发文本朗读系统

来源:互联网 发布:没有系统的嵌入式编程 编辑:程序博客网 时间:2024/04/30 22:29

       通过本文你可以学习到:将一般的dll文件,导入到.net托管的环境中;开发一个简单的文本朗读系统。

 

上次在用了win7的语音识别之后觉得真的可以在完善一下,后来在图书馆看杂志的时候很恰的看了一篇写语音开发的文章,文章虽然只是简单的介绍了一下一个dll库文件的使用,不过我的兴趣还是蛮高的.回来后就试验了一下.

 

    首先下载sapi.dll文件: http://u.115.com/file/f4d3df0e16

 

       然后要利用vs自带的工具Tlbimp.exesapi导出到托管动态链接库中,以便在.net环境中使用。具体操作就是在开始程序中找到vs的菜单,里面有Visual Studio Tools,然后打开Visual Studio 2008 命令提示。

 

       输入命令tlbimp [sapi.dll完整目录] /out::DotNetSpeech.dll,忽略警告和错误。

 

       完成之后你就就可以使用这个dll文件了。

      

       打开vs008,新建一个c#项目,添加引用,引用那个DotNetSpeech文件。

       在文件上面引入命名空间:using DotNetSpeech;

 

       测试代码如下:

       class Program

    {

        static void Main(string[] args)

        {

            SpeechVoiceSpeakFlags spFlags = SpeechVoiceSpeakFlags.SVSFlagsAsync;

            SpVoice sp = new SpVoice();

            sp.Speak("哈哈,你好,我叫胡阳",spFlags );

            Console.Read();

        }

    }

   

    没有意外的话,你就能听见电脑发出声音了。如果没有声音,请先检查你的耳麦,如果还是没有的话你可以留言。

 

    上面的只是一个初步的应用,你还可以尽情的发挥你的想象力,比如说我喜欢看小说,不过有时候看的眼睛不舒服,那就找个人来帮我念吧。好了,有想法了,做一个吧。于是有了下面的一个小程序,你可以自己下载下来去玩耍。

展示图:

no

下载地址:http://u.115.com/file/f42727e66e

 

       关于扩展开发:

       其实本来我也要接着写语音识别那一部分的,就是我说话让计算机执行。但是因为系统中存在win7系统自带的语音识别,每次一运行代码就会启动系统的语音识别,估计win7系统的那个语音识别也是根据这个库开发的。所以等改天把系统改成xp了,再来试试。

      

       扩展的几个方面:

1.  语音识别有点难度,文本朗读就so easy了,所以就单根据文本朗读你就可以做些东西,我的一个想法是,整一个糗糗的聊天窗口外挂,有人给你发信息时就可以自动读出来,虽然不太容易,不过以前类似的软件做过,就是糗糗消息炸弹,有兴趣的可以找找。还可以继续发挥。

2.  这个自然就是把语音识别添加上了,整出来一个语音对话系统,和电脑说话玩,太有意思了。等哪天我寂寞的受不了了,我就开发一个出来。(嘿嘿)

 

扩展网址:

http://hi.baidu.com/mrmobilerobot/blog/category/%BC%C6%CB%E3%BB%FA%D3%EF%D2%F4

 

PS:

Speech SDK 5.1的地址:http://www.microsoft.com/downloads/en/details.aspx?FamilyID=5e86ec97-40a7-453f-b0ee-6583171b4530&displaylang=en

 

原创文章,转载请注明出处:http://www.the5fire.net/?p=69

 

 

原创粉丝点击