TTS5.1求教。。。。。。。。。。。。。。。。。。

此后三年 2015-04-22 09:52:23
我下载安装了微软TTS5,1的sdk, 其中c++的demo可以发声,用mfc,但是效果不好,于是我又安装了别的语音库, 也可以在示例代码中设置使用别的语音库,现在的问题是我不想用MFC,而是想导出为dll, 问题是怎么设置语音库为新安装的语音库,而不是原来系统默认的,求助。。。。。。。。
SDK

语音库

代码

#include "stdafx.h"
#include "atlcomcli.h"
#include "sapi.h"
#include "sphelper.h"

int _tmain(int argc, _TCHAR* argv[])
{
HRESULT hr = S_OK;
CComPtr<ISpObjectToken> cpAudioOutToken;
CComPtr<IEnumSpObjectTokens> cpEnum;
CComPtr<ISpVoice> cpVoice;
ULONG ulCount = 0;


CComPtr<ISpObjectToken> test;
::CoInitialize(NULL); // COM初始化

if(SUCCEEDED(hr))
hr = cpVoice.CoCreateInstance( CLSID_SpVoice );

if(SUCCEEDED(hr))
hr = SpEnumTokens( SPCAT_AUDIOOUT, NULL, NULL, &cpEnum );

if(SUCCEEDED(hr))
hr = cpEnum->GetCount( &ulCount );

//selectVoice(cpVoice);

cpVoice->SetRate(-2);
hr = cpVoice->Speak( L"落霞与孤鹜齐飞,秋水共长天一色", SPF_DEFAULT, NULL );

::CoUninitialize();
return 0;
}

这样只能使用默认的语音库,求怎么设置使用别的语音库的方法。。
...全文
84 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2015-04-23
  • 打赏
  • 举报
回复
Process Monitor 实时监视文件系统、注册表、进程、线程和 DLL 活动。 http://www.microsoft.com/china/technet/sysinternals/utilities/processmonitor.mspx

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧