浅谈TTS语音引擎的应用_第1页
浅谈TTS语音引擎的应用_第2页
浅谈TTS语音引擎的应用_第3页
浅谈TTS语音引擎的应用_第4页
浅谈TTS语音引擎的应用_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、浅谈tts语音引擎的应用第7卷第1期泰州职业技术学院2007 年 2 月 journaloftaizhoupolytechnicallnstitutevoi.7no.ifeb.20o7浅谈tts语音引擎的应用陈路(泰州职业技术学院,江苏泰州225300)摘要:介绍了 tts语咅引擎技术的原理,安装与应用,并运用borlanddelphi7.0可视 化编程工具开发出了一个能够进行中,英文语音朗读的软件实例,详细说明了 tts语音引 擎技术的使用方法与技巧.关键词:1 trs语咅引;speech api;中英文朗读中图分类号tp39文献标识码:a文章编号16710142(2007)01 0011

2、一 03tts语音引擎是微软提供的一套功能强大的文字朗读引擎,是一种可以让电脑说 话的技术.在这种技术的基础上进行二次开发,可以让计算机声卡发出声音将中文或英文的内容阴 读出来,在学习和工作中具有较大的实用价值11 .比如在英语学习中,就可以用电脑与人进行对话,不管 是背单词还是练听力都有极好的效果.再如,运用这种技术可以让电脑自动阅读文章,阅读邮件,述可以 用它实现文字校对的工作对这种技术作了研究并通过delphi7.0开发了一个具有中英文朗读功能的 应用软件,演示了mstts技术的使用方法.语音引擎的工作原理语音引擎的工作原理是把细小的声音样本连接起来,每一个样本都是人的语言发 咅(英语)

3、的一个最小单位,这些声音样本称为音素每一个音素对应一个,二个或者三个字母例如, 英文单词” hello”的读音可以划分为” hiellloo",从读音上可以看出,儿个音素的读音构成了整个单词的 发音再依靠一些特殊的标记实现声调,重咅等,从而合成一个完整的单词读咅.在阅读整个句子时,用 类似的方法,使语音在整个句子之内起落变化,语调的变化使得语音更自然,更富有感染力,使问句和 陈述句能够相互区别.例如:itifak!iitfak?读出来的语调就不一样.语音引擎就是依据这种原理,从而实现 了英文,屮文乃至其他语言的单词及文章的朗读功能.2语音引擎的安装2.1mstts引擎的安装在delp

4、hi平台中使用1 丫 rs语音引擎的设计原理是通过调用微软语音接口 (msspeechap i)来实现英文文字朗读功能的必须安装mstts引擎和msspeechapi,安装文件 microsoftspeechsdk5.1 .msi可以在微软官方网站找到.如果在软件中要实现中文文字的阅读则必须安装microsoftspeechsdks. 1languagepack.msi,这个sdkpack屮提供了对屮文,口文的支持. 2.2speechlib类型库的导入在borlanddelphi平台上,新建一个 application,然后从project菜单的 "impoatypelibrary

5、 "中选择”add”121,浏 览到 c:progral 13filescommonfilesmicrosoftshared-speech,打 开sapi.dll,可以看到下面classnames中出现了十几个接口的包装类文件.点击createunit就可以生成一个名 为 speechlib.tlb的unit,点击对话框底部的install按钮,就可以将这些类安装到delphi7.0的部件 面板屮.作者简介:陈路(1979 ),男,江苏靖江人,助教,硕士12泰州职业技术学院第1期 3中英文阴读功能的实现 在窗体formi上添j3nn卜'控件:1个spvoice控件.2 个me

6、mo文本控件,1个combobox控件和2个t豫ckhar 控件,5个button按钮.将这些控件合理安排,软件主界面 如图1所示然后,对各个控件的属i生进行设置.spvoice 控件用来实现对its的控制;一个文本控件用于显示和 编辑朗读内容,另一个用于显示引擎人物的特性;两 个滚动条控件分别用于显示和设定语速及音量大小;第一 个按钮的caption属性设为”阅读”,它的功能是当用户点 击按钮时进行朗读或当软件处于暂停状态时恢复朗读;第 二个按钮控件的caption属性设为”暂停”,它的功能是当 图1界面示意图软件处于朗读状态吋暂停朗读;第三个按钮控件的caption属性设为”停止”,它的

7、功能是当软件处于朗读状态时停止朗读;第四个按钮控件的caption属性设为”中文释义语音提示”,它 的功能是朗读当前词汇的屮文注释;第五个按钮控件的caption属性设为”单词拼写语音提示",它的功 能是将英文单词的的每一个字母读出来嘲;4代码的实现4.1枚举可用的语音引擎值得注意的是,在its语音引擎屮内置了几个虚拟的人物,文字到语音的转变看起 来好像是这几个虚拟人物”读”出来的在默认的安装环境中有以下几个人 物:mary(女),mike(男),sam(男),microsoftsimplifiedchinese(男).其中mary,mike,sam能说英语,而要说1+1文,就必须选

8、择microsoftsimplifiedchinese这个人物.在此需要说明的是,默认安装的这几个虚拟人物,其发音是由机 器合成的,如果设置不当,发音效果就可能不佳,很彖是机器人在说话,而社会上有些科技公司运用语 音引擎技术开发了真人发音语音库,发音效果几乎可以达到以假乱真的地步列举tts引擎所支持的人 物的代码如下:procedurelistttspersono;varhinteger;sotoken:ispeechobj ecttoken;sotokens"ispeechobjecttokens;1 sinspvoice.eventlnterests:=sveallevents;

9、sotokens:=spvoice.getvoices();fori:=otosotokens.count一ldobeginsotoken:=sotokens.item(i);combobox 1.items. addobject(sotoken.getdescription(0),tobject(sotoken);sotoken.addref;end;end;4.2选择引擎人物,并显示引擎人物的特性proceduregetpersonlnfoo;vats otoken: is peechobj ecttoken;1 zin第1期陈路:浅谈tts语音引擎的应用withlstenginelnfo

10、.itemsdobeginclear;sotoken:=ispeechobjecttoken(pointerfcombobox l.items.objectscbvoices.hemlndex);spvoice.voice:=sotoken;add(format(阅读人:s, sotoken.getattribute(name,)add(format(生产厂家:%s,sotoken.getattribute(" vendor');add(format(年龄:%s,sotoken.getattribute('age3);add(format(i 生别:%s.sotoke

11、n.getattribute(gender') 1);add(format(语言:s,【sotoken.getattribute(language');endend;4-3速度与音量的设置通过改变spvoice.volume的大小可以调节音量,改变spvoice.rate的值可以调节 速度,速度快慢对朗读的效果有较大的影响,可以根据实际选择的人物,通过测试设定合理的数值, 使得软件的发音效果 更加自然一些.proceduresetspeed;beginspvoice.rate:=tbrate.position;/tbrate 为滚动条控件end;procedureset vol

12、ume;beginspvbice.volume:=tbvolume.position;/tbvolume 为滚动条控件end;4.4阅读,暂停,继续和停止的功能在进行语音朗读时,根据需要对发音进行控制,实现阅读,暂停,继续和停止的功能. 基本控制方法如下:spvoice.speak(memol.text,svsflagsasync);,/ 朗读文木内容spvoice,pause;/借停朗读spvoice.resone;/ 继续朗读spvoice.speako,/停止朗读spvbice.skip(rsentence,maxint)5结语在本文中,通过制作英语学习软件的例子,对如何运用微软的rrs

13、语音引擎技术开 发软件进行了深人的研究和实践,运用borlanddelphi7.0可视化编程工具实现了语咅引擎的选 择,中文,英文的混合阅读,语速,音量的调节等功能,对学习英语有很大的作用不仅如此,微软韵语音引 擎技术在其他方面也有很多用途,比如自动阅读邮件,文字校对,自动应答服务,cai课件制作等等.根 据实际需要,灵活运用mstis技术制作一些能够让电脑说话的软件,对提高工作的效率,有很大帮助. (下转第24页1泰州职业技术学院第1期程屮越界,造成设备损害,设计了两级电气保护系统.第一级计算机控制的保护措 施是在检测平台的行程两头安装接近开关,它把检测平台到达边界的信号传送给工控机,监控程

14、序会一 直检测传感器的状态,当状态发生改变时向电机发出停传指令.第二级保护是利用继电器控制的电气 保护,以防止第一级保护的失效造成的损害当检测平台越过第一级到达第二级开关吋,行程开关动作, 切断电机电源,由于步进电机在线圈断电时具有自锁功能,从而起到了保护作用,通过复位按钮可恢 复电机供电两级保护起到了兀余的作用,使检测系统的运行更加安全可靠.2.6控制软件和实时显示本系统的控制程序在windowsxp下开发,用borland公司的c+builde6o编程, 并建立数据库,以实现数据的存储及调用.c+builder6.0提供了一个良好的控制界面,方便调试,效 率高.a/d采集的数据通过软件控制

15、实时显示在计算机的屏幕上,后台数据库提供庞大的数据存储空间,可根据需要随时将数据存入数据库.参考文献:11陈海军,莫微60co工业dr无损检测的计算机扩展系统卩】核电子学与探 测技术,22(5):432-4342陈基勇自动控制的偏转反射镜式剪切电子散斑干涉相移系统研究j光 子,32(6):742744photo-electronicdataacquisitionandreal-timedisplayincoindustrydrnon-destructivetestingzhourong-rong(taizhounormalcollege,taizhoujiangsu225300,china)a

16、bstract:computercontrolsystemfornon一destructivetesting,whichisconvenientandhighlyprecise.hasgreatprospectand dis8eminati0n.theessayintroducesindetailthecompositionandworkingprinciplesofthec ontrolsystem.itespeciallyintroducesthecompositionofphoto一electronicdataacquisitionandworkingprinciplesofstepmo

17、tor.gathereddatacanbereal一 timedisplayedbysoft 一 wares.furthermore,photo 一 electronicisolatorandphoto 一 electronicprotectionareusedtoimprovereliabilityofthewholesystem.keywords:nondestructivetesting;photoelectronicdataacquisition;realtimedisplay;stepmotor(责任编辑刘红)(上接第13页1参考文献:lmicrosoft.microsoftspee

18、chsdk5documentationeb/ol.(2o05 一 6 一 5)2006-9-61.http:/download.microsoft>corrddownload/speeehsdk/sdk/5.1 /wxp/enus/sapi.chin.【2】徐新华delphi3编程指南【m】.北京:北京希望电子出版社,1998 3liuxiangsoft. 1 earnenglishsoft 【db/ol.(2006 6 2)2006 10 5 .http:/2ccc.eom/article.a 印?articleid=3377.theapplicationofttsspeechenginechenlu(taizhoupolytechnicinstitute.taizhoud angsu225300,china)abstract:thepaperintroducedthetheory,assembl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论