Microsoft Speech SDK开发包 使用

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

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

    Microsoft Speech SDK开发包 使用
  2.  

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

    Microsoft Speech SDK开发包 使用
  3.  

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

    Microsoft Speech SDK开发包 使用
    Microsoft Speech SDK开发包 使用
    Microsoft Speech SDK开发包 使用
    Microsoft Speech SDK开发包 使用
  4.  

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

    Microsoft Speech SDK开发包 使用
    Microsoft Speech SDK开发包 使用
    Microsoft Speech SDK开发包 使用
  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开发包 使用

上一篇:ios的@property属性和@synthesize属性


下一篇:Report processing of Microsoft Dynamic AX