1. 下载开发包。我们首先从微软的官网上面下载开发包,下载地址如下:

    http://www.microsoft.com/en-us/download/details.aspx?id=10121我们主要下载三个关键的程序:SpeechSDK51.exe 、 msttss22L.exe、SpeechSDK51LangPack.exe,将这三个下载下来即可。

  2.  

    安装sdk。分别将下载的三个安装包解压安装就可以了(记住安装目录)。

  3.  

    环境配置。这里我们需要将您安装的Microsoft Speech SDK安装目录中的头文件目录,以及库文件目录添加到你的VC++6.0开发环境中。打开VC++开发工具,选择其中的“工具”->“选项”选项卡,然后安装如下图所示的图示操作:

  4.  

    新建一个Win32 console Application工程。添加一个cpp源文件。具体操作如下图所示:

  5.  

    编写一个简单的“Hello World!”语音播报程序。程序代码如下:

    #include <sphelper.h>//语音头文件

    #include <stdio.h>//C头文件,用来提示错误信息

    int main()

    {

    ::CoInitialize(NULL);//初始化语音环境

    ISpVoice * pSpVoice = NULL;//初始化语音变量

    if (FAILED(CoCreateInstance(CLSID_SpVoice, NULL,CLSCTX_INPROC_SERVER, IID_ISpVoice, (void **)&pSpVoice)))

    //给语音变量创建环境,相当于创建语音变量,FAILED是个宏定义,就是来判断CoCreateInstance这个函数又没有成功创建语音变量,下面是不成功的提示信息。

    {

    printf("Failed to create instance of ISpVoice!\n");

    return -1;

    }

    pSpVoice->Speak(L"Hello World!", SPF_DEFAULT, NULL);//执行语音变量的Speek函数,这个函数用来读文字。

    pSpVoice->Release(); //释放语音变量

    ::CoUninitialize();//释放语音环境

    return 0;

    }

    如果在调用TTS出现createdefaultobjectodd()错误,是因为声卡驱动某些服务没有开启:

    1、开启如下:

    A、按“win”+“R”,输入“Services.msc”;
    B、 在服务列表中滚动,找到“Windows Audio”,看是否没有启动,如果没有,右键选启动。
        此外,请检查以确保其相关服务项也已经启动:
    多媒体类计划程序
    远程过程调用
    Windows 音频终结点生成器

    如果是安装声卡驱动之后仍然无法打开音频设备的话,可以尝试以下的方法:
    按win+R,在对话框内输入“(regedit)”,打开注册表编辑器;
    然后点“编辑”栏,然后点“查找”,或者按Ctrl+F;
    在查找目标对话框内输入“(Audiosrv)”,记着把对话框下方的全字匹配打勾;
    搜索完毕之后找到(RequiredPrivileges);
    右键(RequiredPrivileges)修改,双击也行,把数据里面的后两项删除;
    只保留(SeChangeNotifyPrivilege),然后点确定,OK了。

    2、检查语音识别功能是否开启:

Microsoft Speech SDK开发包 使用的更多相关文章

  1. Android SDK开发包国内下载地址(转)

    想了解Android 应用开发,但可恨开发环境安装就困难重重,这里找到一个国内下载地址,特转来记录 Android SDK开发包国内下载地址

  2. brother b-PAC sdk开发包

    brother b-PAC sdk开发包 https://download.brother.com/welcome/dlfp100607/bsdkw32031eu.exe https://www.br ...

  3. Android SDK开发包国内下载地址

    不知道是因为最近kaihui还是怎么的,打开android sdk官方网站特别的慢,想下载最新版本的platform几乎变成不可能完成的任务,不知道为什么Google不像Apache那样在各国设立镜像 ...

  4. 移动端车牌识别sdk开发包(可下载)

    移动端车牌识别是一项基于OCR识别的应用技术.移动端车牌识别过程主要包含五个步骤,其中包括图像采集.图像预处理.车牌定位.字符分割.字符识别.输出结果等一系列计算机算法运算, 第一步[图像采集]:此步 ...

  5. vmware开发包之vSphere Management SDK

    vSphere Management SDK关于vmware管理等相关功能的.net和java的代码示例. 在其5.5的解压包中 eam:esx agent management表示esx虚机生产环境 ...

  6. 使用ecstore-sdk开发包制作易开店和启明星模板

    前言: 尽管商派官网有模板开发教程,但是诸多方面太过笼统.我等平庸之辈,纵使细心研读,潜心修炼,亦未能品味练功境界,领悟其中真谛. 商派有云,此九阳真经不用您挥刀****本人却感觉此教程令人抓狂,无人 ...

  7. 【语音识别】Microsoft Speech Platform 自学笔记2 环境要求与安装过程

    笔记人:又吹风 时 间:2012/12/16 主要内容:Microsoft Speech Platform的环境要求与安装过程. 上次也说过了,当前Microsoft Speech Platform最 ...

  8. [转]QGis2.9在windows下的编译以及二次开发包下载

    今天心血来潮,将QGis在github上的代码更新后,又编译了一下.留意到源代码包里面的INSTALL文件有更新,于是本次编译完全基于官方的编译说明.编译过程非常顺利,除了在CMake的第一次conf ...

  9. .NET 的 WebSocket 开发包比较(转)

    .NET 的 WebSocket 开发包比较 编者按 本文出现在第三方产品评论部分中.在这一部分的文章只提供给会员,不允许工具供应商用来以任何方式和形式来促销或宣传产品.请会员报告任何垃圾信息或广告. ...

随机推荐

  1. Mysql的四种key

    我们看到Key那一栏,可能会有4种值,即 '','PRI','UNI','MUL'1. 如果Key是空的, 那么该列值的可以重复, 表示该列没有索引, 或者是一个非唯一的复合索引的非前导列2. 如果K ...

  2. Error building Player: Win32Exception: ApplicationName=&#39;E:/adt-20140702/sdk\tools\zipalign.exe&#39;, Com

    1.原因 更新sdk后报错..由于版本号不同,zipalign.exe所处路径不同 2.解决的方法 在sdk路径下搜索zipalign.exe .然后拷贝到报错内容中制定的路径即可了.

  3. 如何把网页或html内容生成图片

    网页或html内容生成图片 今天想把做好的html内容或网页生成一张图片,没有网页在线版的生成或转换工具,除非下载客户端软件使用.   不过,发现可以利用搜狗高速浏览器和360浏览器生成图片,这里讲解 ...

  4. lnmp下 nginx 配置虚拟主机

    <一.参考> 这里以配置2个站点(2个域名)为例,n 个站点可以相应增加调整,假设: IP地址: 202.55.1.100 域名1 example1.com 放在 /www/example ...

  5. iOS9新特性之新添加的关键字

    iOS9 新出的关键字:用来修饰属性,或者方法的参数,返回值 好处:1.迎合swift 2.提高我们开发人员开发规范,减少程序员之间的交流 注意:iOS9新出的的关键字nonnull,nullable ...

  6. 个人开发者帐号--我是如何实现在另一台mac上真机调试的

    本文转载至 : http://blog.csdn.net/chenyong05314/article/details/8689534   注:本人有一台mac电脑,之前申请开发者帐号的时候直接就是在这 ...

  7. vs添加对dll的引用

    我们在使用vs进行开发调试的时候经常会遇到一个问题,就是当我们的主工程引用到其他工程更新的dll(我们经常采用copy到工程目录的方法).亦或者当我们的多个工程引用到同一个dll文件的时候,我们怎么来 ...

  8. Spring MVC之简单入门

    一.Spring MVC简介: 1.什么是MVC 模型-视图-控制器(MVC)是一个众所周知的以设计界面应用程序为基础的设计模式.它主要通过分离模型(Model).视图(View)及控制器(Contr ...

  9. java socket相关的timeout

    1 java socket的两个timeout 一个是connect timeout,即建立连接的timeout,另外一个是so timeout,是读取数据的timeout.这两个timeout都是因 ...

  10. javascript --- 声明提前(学习笔记)

    声明提升 未声明变量 console.log(a); 在没有定义 a 的情况下,直接使用,会报错. 声明变量 console.log(a); var a = 2; 输出结果:undefined 并不会 ...