当前位置: 移动技术网 > IT编程>开发语言>c# > C#语音识别用法实例

C#语音识别用法实例

2019年07月18日  | 移动技术网IT编程  | 我要评论
本文实例讲述了c#语音识别用法。分享给大家供大家参考。具体分析如下: c#可以利用微软操作系统自动的语音识别功能,读取信息。步骤如下: 1.  在项目中添加&

本文实例讲述了c#语音识别用法。分享给大家供大家参考。具体分析如下:

c#可以利用微软操作系统自动的语音识别功能,读取信息。步骤如下:

1.  在项目中添加  ""  引用

2.  引入命名空间:

复制代码 代码如下:
using speechlib;

3.  读取的代码:

复制代码 代码如下:
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#程序设计有所帮助。

如您对本文有疑问或者有任何想说的,请 点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网