源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

C#语音识别用法实例

  • 时间:2021-05-15 04:25 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:C#语音识别用法实例
本文实例讲述了C#语音识别用法。分享给大家供大家参考。具体分析如下: C#可以利用微软操作系统自动的语音识别功能,读取信息。步骤如下: 1.  在项目中添加  ""  引用 2.  引入命名空间:
[u]复制代码[/u] 代码如下:
using SpeechLib;
3.  读取的代码:
[u]复制代码[/u] 代码如下:
SpeechVoiceSpeakFlags flag = SpeechVoiceSpeakFlags.SVSFlagsAsync;     SpVoice voice = new SpVoice();     voice.Voice = voice.GetVoices(string.Empty, string.Empty).Item(0);     voice.Speak("你是一个大美女,我试一个大帅锅,哈哈", flag);
其中: 1. SpeechVoiceSpeakFlags 是一个枚举。 SpVoice标志:     SVSFDefault = 0     SVSFlagsAsync = 1     SVSFPurgeBeforeSpeak = 2     SVSFIsFilename = 4     SVSFIsXML = 8     SVSFIsNotXML = 16     SVSFPersistXML = 32 正规化标志:     SVSFNLPSpeakPunc = 64 面具:     SVSFNLPMask = 64     SVSFVoiceMask = 127     SVSFUnusedFlags = -128  结束枚举分子 SVSFDefault 指定应使用的默认设置。默认值是: 讲定的文本字符串同步(覆盖与SVSFlagsAsync), 不清除挂起说话请求(覆盖与SVSFPurgeBeforeSpeak), 为了解析XML的文本,如果第一个字符是左尖括号(覆盖与SVSFIsXML或SVSFIsNotXML), 不坚持全球XML状态更改在讲电话(覆盖SVSFPersistXML), 不扩展的标点字符成字(覆盖与SVSFNLPSpeakPunc)的。 SVSFlagsAsync 指定的讲调用应该是异步的。也就是说,它会立即返回排队的讲请求后。 SVSFPurgeBeforeSpeak 清除所有悬而未决的发言请求,在此之前讲的呼叫。 SVSFIsFilename 的说话方式传递的字符串是一个文件名,而不是文字。其结果,没有发言字符串本身而是该文件的路径,该路径是口头的处理。 SVSFIsXML 输入的文本将被解析为XML标记。 SVSFIsNotXML 输入的文本将不会被解析的XML标记。 SVSFPersistXML XML标记的全局状态的变化将持续到说话的呼叫。 SVSFNLPSpeakPunc ,标点符号应扩大到字(例如:“这是什么。”将成为“这是这期”)。 SVSFNLPMask SAPI(而不是文本到语音引擎)处理此掩码中的标志。 SVSFVoiceMask 此面膜具有每一个标志位设置。 SVSFUnusedFlags 此面膜具有每一个未使用的位集。 2. SpVoice SpVoice类是支持语音合成(TTS)的核心类。通过SpVoice对象调用TTS引擎,从而实现朗读功能。 SpVoice类有以下主要属性: Voice:表示发音类型,相当于进行朗读的人,包括Microsoft Mary,Microsoft Mike,Microsoft Sam和Microsoft Simplified Chinese四种。其中前三种只能读英文,最后一种可以读中文,也可以读英文,但对于英文单词只能将其包括的各个字母逐一朗读出来。下面的程序中我们将会想办法解决这个问题。 Rate:语音朗读速度,取值范围为-10到+10。数值越大,速度越快。 Volume:音量,取值范围为0到100。数值越大,音量越大。 SpVoice有以下主要方法: Speak:完成将文本信息转换为语音并按照指定的参数进行朗读,该方法有Text和Flags两个参数,分别指定要朗读的文本和朗读方式(同步或异步等)。 Pause:暂停使用该对象的所有朗读进程。该方法没有参数。 Resume:恢复该对象所对应的被暂停的朗读进程。该方法没有参数。 希望本文所述对大家的C#程序设计有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部