• 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:恢复该对象所对应的被暂停的朗读进程。该方法没有参数。

  • 相关阅读:
    勿忘心安
    设△ABC的内角A,B,C,所对的边分别为a,b,c,且acosB-bcosA=3/5c,则tan(A-B)的最大值为
    P1011 车站
    第一天
    P1134 阶乘问题
    P3152 正整数序列
    某数论
    DO YOU WANNA BUILD A SNOW MAN ?
    luogu P1579 哥德巴赫猜想(升级版)
    紫书 习题 10-25 UVa 1575 (有重复元素的全排列+暴搜)
  • 原文地址:https://www.cnblogs.com/Theladyflower/p/4212550.html
Copyright © 2020-2023  润新知