如何将TTS引擎读出的语音保存成WAV?(20分)

  • 主题发起人 liyandotnet
  • 开始时间
L

liyandotnet

Unregistered / Unconfirmed
GUEST, unregistred user!
如何将TTS引擎读出的语音保存成WAV?
 
我有这样的程序。
 
可否送小弟一份?:)
 
我的email:asp@ceo.com.cn
可否发给我一份?
 
谢谢给小弟第一份
email:wzb_shipman@163.com
:)
 
我的email: yeschoto@21cn.com / huayi668@163.com
可否发给我一份?谢谢!
 
anan168@163.com
 
DelphiX控件包里有这样的例子,什么东西都可以录。
 
说说原理,是通过ACM进行录制还是怎样?。。
[:)]
 
alaifu@21cn.com
求求你给我一份 , 我好想要 ,真的,我就是在做这方面的设计呢现在。头疼!!!!!
 
下面是我在MSDN找到的VB代码,好像可以实现这个功能,那位老大能将其翻译成Delphi?
---------------------------------------------------------
Dim FileName As String
Dim FileStream As New SpFileStream
Dim Voice As SpVoice
'Create a SAPI voice
Set Voice = New SpVoice

'The output audio data will be saved to ttstemp.wav file
FileName = “c:/ttstemp.wav"

'Create a file;
set do
Events=True so TTS events will be saved to the file
FileStream.Open FileName, SSFMCreateForWrite, True
'Set the output to the FileStream
Set Voice.AudioOutputStream = FileStream

'Speak the text
Voice.Speak “hello world”
'Close the Stream
FileStream.Close
'Release the objects
Set FileStream = Nothing
Set Voice = Nothing
 
其实你上面的说明已经很完整了,不知道你是那里不会呢?
不过在Delphi里面还要进行Import ActiveX的操作。。。!!
 
意思当然是很完整的,但是上面的一下东西在Delphi中不适应,比如:
上面提到的SpFileStream我在ActiveX列表里面没找到。
 
Dim FileStream As New SpFileStream
这个是声明一个FileStream(这是Delphi的对象)
Dim Voice As SpVoice
这个声明的是那些ActiveX的SAPI Voice,要Import进Delphi的PAS。。
 
老大,给我一份
lesser-panda@163.com
 
那么上面的:Set Voice.AudioOutputStream = FileStream中的AudioOutputStream我怎么在TTS中找不到呢?
 
那就要看你建立的对象是不是这个了。。有没有这个属性?。。
你看看TLB文件里面有没有这个再说吧。。
 
我看了,没有这个属性:(
 
是这个对象吗?。。
还是TTS的其他的对象。。。
 
有两个:
一个:Microsoft Direct Text-To-Speech (Version 1.0)
还有一个:Microsoft Voice Text (Version 1.0)
-----------------
这两个我都Import了,都可以阅读文本,属性、过程等都相同,但是都没有AudioOutputStream这个属性。
 
顶部