VS2013+Microsoft Speech SDK 文字转语音

参考文档:

  1. windows下使用Microsoft Speech SDK开发包做语音识别https://blog.csdn.net/marleylee/article/details/77116609
  2. C++语音识别接口快速入门(Microsoft Speech SDK)——文字转语音https://blog.csdn.net/qq_34369618/article/details/53386288

步骤:

  1. 安装开发包
    SpeechSDK51.exe 、 msttss22L.exe、SpeechSDK51LangPack.exe
    下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=10121
    SpeechSDK51.exe解压后运行setup.exe
    SpeechSDK51LangPack.exe解压后运行setup.exe
    msttss22L.exe直接运行
  2. 环境配置
    右键项目→属性→配置属性→VC++ 目录→库目录→添加“C:\Program Files (x86)\Microsoft Speech SDK 5.1\Lib\i386”
    右键项目→属性→配置属性→C/C++→附加包含目录→添加“C:\Program Files (x86)\Microsoft Speech SDK 5.1\Include”
  3. 测试代码
#include "stdafx.h"
#include <iostream>
#include <string>
#include <sapi.h>//导入语音头文件
#pragma comment(lib,"sapi.lib")//导入语音头文件库

void  MSSSpeak(LPCTSTR speakContent)// speakContent为LPCTSTR型的字符串,调用此函数即可将文字转为语音
{
	ISpVoice *pVoice = NULL;

	//初始化COM接口

	if (FAILED(::CoInitialize(NULL)))
		MessageBox(NULL, (LPCWSTR)L"COM接口初始化失败!", (LPCWSTR)L"提示", MB_ICONWARNING | MB_CANCELTRYCONTINUE | MB_DEFBUTTON2);

	//获取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(speakContent, 0, NULL);

		pVoice->Release();

		pVoice = NULL;
	}

	//释放com资源
	::CoUninitialize();
}
int main()
{
	std::wstring a = L"符号我错了";
	LPCWSTR str = a.c_str();
	MSSSpeak(str);
	return 0;
}
  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

XerCis

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值