zoukankan      html  css  js  c++  java
  • 微软语音引擎 TTS 最基本使用

    TTS(TextToSpeak)

    需求:需要借助程序实现 文字合成语音/语音识别。

    TTS 介绍就不说了,这里介绍非常详细 >>> TTS详细介绍  +  SAPI(微软的TTS语音合成和识别接口,可在程序中直接调用)

    下面介绍一下,怎么来使用它

    1. 下载安装TTS引擎

    到微软的官方网站上去下载一下

    下载地址>>>微软官方 TTS http://www.microsoft.com/download/en/details.aspx?id=10121

    进入下载页面,可以先点击Details 看一下下详细信息,点击Download

    下载完成后,安装 SDK51 和 SDK51LangPack 。

    2. 可以在程序里用了(使用前先引入一下 sapi.lib 库

    头文件:

    1 #include <sapi.h>
    2 #include <sphelper.h>
    3 #pragma comment(lib, "sapi.lib")//TTS引擎

    函数:

     1 //封装SAPI 功能:传入字符串,合成语音并读出。
     2 void Speak(CString str)
     3 {
     4     ISpVoice * pVoice = NULL; 
     5     //获取ISpVoice接口: 
     6     HRESULT hr = CoCreateInstance(CLSID_SpVoice, NULL, CLSCTX_ALL, IID_ISpVoice, (void **)&pVoice); 
     7     if(SUCCEEDED(hr)) //如果创建成功
     8     { 
     9         pVoice->SetVolume(100);//设置音量
    10         pVoice->SetRate(0);//[-10, 10]
    11         hr = pVoice->Speak(CStringToBSTR(str), 0, NULL); //读出
    12 
    13         pVoice->Release(); //释放token
    14         pVoice = NULL; 
    15     }  
    16 }

    上面函数是在MFC 中使用 TTS 的实例。使用它可以做很多事,譬如语音播报、语音识别等,值得挖掘很深。

  • 相关阅读:
    Windows多线程编程入门
    多字节字符与宽字符
    Linux静态库与动态库详解
    Linux下清理内存和Cache方法
    数据库设计范式
    mybatis面试问题
    Gson使用
    Linux 定时任务crontab使用
    Java-GC机制
    java内存模型
  • 原文地址:https://www.cnblogs.com/yocichen/p/10198304.html
Copyright © 2011-2022 走看看