vc使用speech sdk进行tts语音输出(霜之小刀)

欢迎转载和引用,若有问题请联系
若有疑问,请联系
Email : lihn1011@163.com
QQ:2279557541


首先呢,这是使用了一个微软的sdk,既然提到微软,那么意思就是说其他平台的就暂时别想用这个了,另外呢,这个sdk时基于com组件的


该sdk的下载地址如下:
https://www.microsoft.com/en-us/download/details.aspx?id=10121
我安装了如下几个
SpeechSDK51.exe —这是基础sdk
SpeechSDK51LangPack.exe —这是中文语音包
Sp5TTIntXP.exe —这是xp才需要安装的包,汗颜啊,不是我用的xp,而是有个小设备必须使用xp。。。


至于如何使用呢,简单到令人发指。。。。

#include "sapi.h"
ISpVoice *pVoice = NULL;

//初始化COM接口
if (FAILED(::CoInitialize(NULL)))
    return;
//获取SpVoice接口
HRESULT hr = CoCreateInstance(CLSID_SpVoice, NULL, CLSCTX_ALL, IID_ISpVoice, (void**)&pVoice);
if (SUCCEEDED(hr))
{
    pVoice->SetVolume((USHORT)100); //设置音量,范围是 0 -100
    pVoice->SetRate(0); //设置速度,范围是 -10 - 10
    hr = pVoice->Speak(str, 0, NULL);
    pVoice->Release();
    pVoice = NULL;
}
//释放com资源
::CoUninitialize();

另外需要注意的就是因为使用的时com组件,如果你使用的时QT的话,请添加

LIBS+=-lole32

这里有些疑问,为啥别人说什么sdk里面还要拷出来include和lib呢?我这里测试的时,安装完sdk后,其include和lib的环境变量就已经被该了。。。。不需要自己添加

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值