欢迎来到天天文库
浏览记录
ID:37790807
大小:18.83 KB
页数:4页
时间:2019-05-31
《跨平台TTS eSpeak开发》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、跨平台TTSeSpeak开发eSpeak是最为流行的开源跨平台的文本转语音程序,这段时间一直在做Linux客户端,也就是用Qt编写程序,在功能需求上eSpeak成了最好的选择。先去网站看看吧!http://espeak.sourceforge.net/上面页面的版本是espeak-1.44.05,在Windows下有专门的安装程序,安装后便可测试文本转语音功能,但不适合开发,没有特定的动态链接库和头文件,庆幸的是开源软件,当然不用说,下载espeak-1.44.05-source.zip,这里我
2、用espeak-1.44.05进行的开发。通过阅读文档发现需要另一个开源软件的支持,PortAudio库:免费开源的跨平台音频播放库,支持Windows,Macintosh,Unix,SGIandBeOS等平台。Windows平台:PortAudio库的编译一、准备1、PortAudio开源库官方主页:http://www.portaudio.com/下载源码包2、依赖ASIO库:用于处理声音网址:http://www.steinberg.net/en/home.html下载:http://ww
3、w.steinberg.net/en/company/3rd_party_developer.html3、依赖DirectX库:用于驱动声卡也就是dsound.h、dsconf.h头文件和dsound.lib库。二、步骤1、将ASIO库拷贝到portaudio、srchostapiasio目录下,文件夹改名为ASIOSDK。2、安装DirectX库。3、用VS8.0打开portaudiobuildmsvcportaudio.sln官方说明:http://www.portaudio.c
4、om/trac/wiki/TutorialDir/Compile/Windows(参照设置)然后编译就可以了。编译生成的动态链接库portaudio_x86.dll、portaudio_x86.lib和portaudio.h是我们在eSpeak中可能要用到的哦!eSpeak库的编译一、准备解压espeak-1.44.05-source.zip,espeak-1.44.05-sourceplatformswindows目录下包含了windows_cmd、windows_dll、windows
5、_sapi和espeakedit工程目录,里边都含有VC工程项目文件。windows_cmd是生成espeak.exe命令行程序。windows_dll是生成espeak_lib.dll动态链接库(通过函数调用实现文本转语音功能)。windows_sapi是通过SAPI实现的动态链接库(需要MicrosoftSpeechSDK的支持)。espeakedit生成espeakedit.exe(这里需要wxWidgets的支持和下载的espeakedit-1.44.05.zip)。1.编译espeak
6、.exe程序先从windows_cmd开始,阅读目录下的!ReadMe.txt,将espeak-1.44.05-sourcesrc目录下的文件全部拷贝到windows_cmdsrc,不包括speech.h,将windows_cmdsrcspeech.h中的#defineUSE_PORTAUDIO注释释放,使用上面编译的portaudio库。同时将portaudio_x86.lib替换PAStaticWMME.lib库,在工程属性中添加portaudio_x86.lib库,使用portau
7、dio.h替换windows_cmdsrc目录中的portaudio.h头文件。如果没有意外的话这样编译就通过了,哈哈!编译Release版本,在工程目录下生成espeak.exe,将其拷贝到espeak-1.44.05-source目录下,进行测试:在cmd模式下运行命令:C:DocumentsandSettingsAdministrator>cdC:espeak-1.44.05-sourceC:espeak-1.40.02-source>espeak--path="."-ven"h
8、ello"霸道地听到声音了吧,来庆祝一下!2.编译windows_dll工程编译windows_dll工程,这是文章的重点,因为我们要使用它编译出来的动态链接库来进行编程开发。阅读目录下的!ReadMe.txt,同样将espeak-1.44.05-sourcesrc下的文件拷贝到espeak-1.44.05-sourceplatformswindowswindows_dllsrc下,不覆盖speak_lib.h、speech.h、StdAfx.h、stdint.h文件。修改speak_
此文档下载收益归作者所有