TTS发中文音问题

来源:百度知道 编辑:UC知道 时间:2024/06/07 22:11:32
VC编程 用SAPI里的 ISpVoice::Speak这个方法不能发中文音,但能够发英文,不是语音引擎库的问题,中文语音引擎我有最新的.Speed sdk 5.1的例子TTSAppVB可以发中文音,就是自己写的代码发不了,寻高手回答!不懂得不要废话!

#include <atlbase.h>
#import "C:\Program Files\Common Files\Microsoft Shared\Speech\sapi.dll" raw_interfaces_only

void DoSpeak()
{
using namespace SpeechLib;
// Declare local identifiers:
HRESULT hr = S_OK;

CComPtr<ISpObjectTokenCategory> pVoiceTokenCategory;
CComPtr<IEnumSpObjectTokens> pEnum;
CComPtr<ISpObjectToken> pVoiceToken;
CComPtr<ISpVoice> pVoice;

if(FAILED(hr = pVoiceTokenCategory.CoCreateInstance(__uuidof(SpObjectTokenCategory))))
return;
if(FAILED(hr = pVoiceTokenCategory->SetId((PUSHORT)SpeechCategoryVoices, FALSE)))
return;
if(FAILED(hr = pVoiceTokenCategory->EnumTokens(NULL, NULL, &pEnum)))
return;
ULONG nCount = 0;
if(FAILED(hr = pEnum->GetCount(&nCount)))
return;
LONG bChinese = FALSE;
for(ULONG i = 0; i < nCount; i++)
{