微软语音引擎 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 的实例。使用它可以做很多事,譬如语音播报、语音识别等,值得挖掘很深。

posted @ 2018-12-29 23:14  yocichen  阅读(9370)  评论(0编辑  收藏  举报