实现文本到声音的转换(WAVE)
2005-03-17 09:32
399 查看
//text_to_wave.CPP
#include <sapi.h>
#include <sphelper.h>
#pragma comment(lib,"ole32.lib")
#pragma comment(lib,"sapi.lib")
int main(int argc, char* argv[])
{
ISpVoice * pVoice = NULL;
//COM初始化:
if (FAILED(::CoInitialize(NULL)))
return FALSE;
//获取ISpVoice:
HRESULT hr = CoCreateInstance(CLSID_SpVoice, NULL, CLSCTX_ALL,
IID_ISpVoice, (void **)&pVoice);
if( SUCCEEDED( hr ) )
{
CComPtr<ISpStream> cpWavStream;
CComPtr<ISpStreamFormat> cpOldStream;
CSpStreamFormat OriginalFmt;
pVoice->GetOutputStream( &cpOldStream );
OriginalFmt.AssignFormat(cpOldStream);
//绑定文件:
hr = SPBindToFile( L"D://output.wav",SPFM_CREATE_ALWAYS,
&cpWavStream,&OriginalFmt.FormatId(),
OriginalFmt.WaveFormatExPtr() );
if( SUCCEEDED( hr ) )
{
pVoice->SetOutput(cpWavStream,TRUE);
WCHAR WTX[] = L"<VOICE REQUIRED='NAME=Microsoft Mary'/>text to wave";
pVoice->Speak(WTX, SPF_IS_XML, NULL);
pVoice->Release();
pVoice = NULL;
}
}
//释放COM资源:
::CoUninitialize();
return TRUE;
}
#include <sapi.h>
#include <sphelper.h>
#pragma comment(lib,"ole32.lib")
#pragma comment(lib,"sapi.lib")
int main(int argc, char* argv[])
{
ISpVoice * pVoice = NULL;
//COM初始化:
if (FAILED(::CoInitialize(NULL)))
return FALSE;
//获取ISpVoice:
HRESULT hr = CoCreateInstance(CLSID_SpVoice, NULL, CLSCTX_ALL,
IID_ISpVoice, (void **)&pVoice);
if( SUCCEEDED( hr ) )
{
CComPtr<ISpStream> cpWavStream;
CComPtr<ISpStreamFormat> cpOldStream;
CSpStreamFormat OriginalFmt;
pVoice->GetOutputStream( &cpOldStream );
OriginalFmt.AssignFormat(cpOldStream);
//绑定文件:
hr = SPBindToFile( L"D://output.wav",SPFM_CREATE_ALWAYS,
&cpWavStream,&OriginalFmt.FormatId(),
OriginalFmt.WaveFormatExPtr() );
if( SUCCEEDED( hr ) )
{
pVoice->SetOutput(cpWavStream,TRUE);
WCHAR WTX[] = L"<VOICE REQUIRED='NAME=Microsoft Mary'/>text to wave";
pVoice->Speak(WTX, SPF_IS_XML, NULL);
pVoice->Release();
pVoice = NULL;
}
}
//释放COM资源:
::CoUninitialize();
return TRUE;
}
相关文章推荐
- 实现文本到声音的转换(WAVE)
- 实现文本到声音的转换(WAVE)
- 以vs2010 MFC编程实现文本*.txt到二进制文件的转换
- JAVA过滤标签实现将html内容转换为文本的方法示例
- Linux下使用xargs将多行文本转换成一行并用tr实现逗号隔开
- C#制作文本转换为声音的demo,保存音频文件到本地
- Python实现把json格式转换成文本或sql文件
- VC编程实现文本语音转换
- C#制作文本转换为声音的demo,保存音频文件到本地
- Node.js实现的指定目录xml文件标签对去除及转换为txt文本文件
- python实现将文本转换成语音的方法
- 基于JavaScript实现快速转换文本语言(繁体中文和简体中文)
- waveOutOpen、waveOutWrite系统函数用法编程实现声音播放
- python实现将文本转换成语音的方法
- SAPI实现朗读文本及转换成wav功能
- python实现文本与Excel内容相互转换
- 【转】非官方谷歌文本转换声音API
- 正则表达式实现将html文本转换为纯文本格式(将html字符串转换为纯文本方法)
- C#实现将文本转换为图片
- Javscript实现动态更改jsp页面文本输入框内容的空格和全半角转换