• MS speech SDK5.1朗读控件


    1. 下载SAPI SDK 和语言包(支持中文和日语):

    SAPI 5 SDK: http://download.microsoft.com/download/speechSDK/SDK/5.1/WXP/EN-US/speechsdk51.exe

    语言包: http://download.microsoft.com/download/speechSDK/SDK/5.1/WXP/EN-US/speechsdk51LangPack.exe

    1、打开VS  新建一个窗体项目

    2、添加引用:在COM选项卡里面的Microsoft Speech  object  library引用 

    并在代码区添加引用

    using SpeechLib; 
    using System.Threading;//这个引用是用来保存语音文件用的线程类

     3、添加一个文本框 两个按钮 

    4、在一个按钮下输入如下代码

     SpeechVoiceSpeakFlags flag = SpeechVoiceSpeakFlags.SVSFlagsAsync;
                SpVoice voice = new SpVoice();
                voice.Voice = voice.GetVoices(string.Empty, string.Empty).Item(3);
                //Item(0)单词男声Sam
                //Item(1)单词男声Mike
                //Item(2)单词女声Mary
                //Item(3)中文发音,如果是英文,就依单词字母一个一个发音
                voice.Speak(textBox1.Text, flag);

    代码解释  :其中最重要的是SPVoice类   他是这个DEMO的核心 ;然后就是Item(3)选项  下面注释已经很清楚了 说明是什么意思。后面还有一个SPEAK方法  不用我说也知道是什么意思吧 !当然关于SpVoice对象还有很多方法  查了一下Microsoft Speech的API   还有pause\ Resume     SetVoice\GetVoice    SetRate|SetRate  SetVolume\GetVolume   这些方法根据他的意思就知道 是关于暂停 继续   设置声音   设置读取速度  声音大小的   更多的对象 方法  请参考他的API

    5、在另一个按钮输入如下代码

      SpeechVoiceSpeakFlags flag = SpeechVoiceSpeakFlags.SVSFlagsAsync;
                SpVoice voice = new SpVoice();
                voice.Voice = voice.GetVoices(string.Empty, string.Empty).Item(3);


                SpeechStreamFileMode SpFileMode = SpeechStreamFileMode.SSFMCreateForWrite;

                SpFileStream SpFileStream = new SpFileStream();
                SpFileStream.Open(@"C:\test.wav", SpFileMode, false);
                voice.AudioOutputStream = SpFileStream;//设定voice的输出为Stream
                voice.Speak(textBox1.Text.Trim(), flag);
                voice.WaitUntilDone(Timeout.Infinite);//Using System.Threading;

                SpFileStream.Close();

    其实这段代码跟前一个代码差不多 只不过是通过流把声音保存为语音文件而已  

  • 相关阅读:
    openssl自签发证书
    安装tomcat8 env
    路由信息相关 route 网卡
    安装jdk env
    sublime使用与配置
    docker仓库登录 配置insecure-registries
    harobor私有docker镜像仓库
    git版本回退的两种方式
    git diff命令的使用
    Kali Linux中的自带字典&crunch自建字典
  • 原文地址:https://www.cnblogs.com/mane/p/1830031.html
Copyright © 2020-2023  润新知