SAPI 5.1 语音合成 与 语音识别 [C#].docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SAPI 5.1 语音合成 和 语音识别 [C#] 翻译源:Speech Synthesis Speech Recognition Using SAPI 5.1 By  HYPERLINK /Conferences/DCon2002/Speech/SAPI51/SAPI51.htm \l AboutBrian Brian Long ( HYPERLINK \t _blank /) 翻译说明:并不全文翻译,只翻译些对本人有用的部分,原版代码为Delphi,译文用C# .NET Framework 2.0 实现,有些有关Delphi的解释略去,另添加一些C#使用SAPI的个人理解注释,不定期更新 [1]语音合成 在简单层面上实现语音合成,只需要创建SpVoiceClass对象并调用其中的Speak方法,最简单的实现如下[读出文本框中的文字] ???????private void button1_Click(object sender, EventArgs e) ???????{ ???????????SpVoiceClass svc = new SpVoiceClass(); ?? ???????????svc.Speak(textBox1.Text,SpeechVoiceSpeakFlags.SVSFDefault); ???????}... [Tachikoma注:此处并未提到编程时添加对SAPI的引用,对COM组件的引用较简单,请自行处理] 对Speak方法的参数作如下说明: 0]对Speak方法的调用默认情况下将会是同步的,也就是说在朗读完指定文字之前不会返回值[同步/异步状态可用第二参数调整] 0]Speak方法返回一个流标号,当存在多个异步声音流时可通过标号识别,标号可作为参数提供给某些函数 1]第一个参数为要阅读的文字 2]第二参数为可调节的一些参数[Flags],可用或运算符将其连接同时使用 # SVSFDefault ?[该方法将同步阅读][具体见说明0]] # SVSFlagAsync [该方法将异步阅读,调用后将立即返回,可通过事件监视朗读结束时间,或调用WaitUntilDone 方法,或通过SpeakCompleteEvent 得到一个事件句柄并提供给WaitForSingleObject] # SVSFPurgeBeforeSpeak ?所有朗读中的和待朗读的字符都将被取消 # SVSFNLPSpeakPunc 标点将被阅读出来 # SVSFIsFilename 标明第一个参数为要朗读文本所在的文件名 # SVSFIsXML ?标明文本中含有XML标签,用于控制朗读的音量\频率等参数,示例 EMPHHello/EMPH PRON SYM=d eh l f yDelphi/PRON developers! VOLUME LEVEL=70 I can speak PITCH MIDDLE=+10high/PITCH and PITCH MIDDLE=-10low/PITCH. I can speak RATE SPEED=+10very quickly/RATE and RATE SPEED=-10very slowly/RATE. I can speak VOLUME LEVEL=40quietly/VOLUME and VOLUME LEVEL=100loudly/VOLUME. /VOLUME  HYPERLINK /Tachikoma/archive/2007/11/01/946087.html Go to source web page: SAPI 5.1 语音合成 和 语音识别 [C#][1] - Tachikoma的乱七八糟 - 博客园 列举语音[Voices] 翻译说明:由于这个部分涉及到了Delphi编写的简单程序,将其换成C#实现,有些不必要的说明不按照原文翻译,基本上是按照原文复述 本节目标:调整朗读语音,调整语音频率和音量 代码环境设定:两个TrackBar代表语音频率和音量,trackBarRate,trackBarVolume,一个ComboBox选择朗读语音,comboBoxLanguage PS:朗读语音,可能会不明白朗读语音的意思,就是在控制面板-语音-文字语音转换-语音选择中的项,比如Microsoft Mary,Microsoft Sam等等 SpVoiceClass类中GetVoices函数原型如下 public virtual ISpeechObjectTokens GetVoices(string RequiredAttributes, string OptionalAttributes); 该函数返回一个ISpeechObjectT

文档评论(0)

***** + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档