need help with code translation from VB

L

Li Chen

Hello,

I copy the following scripts from
http://msdn.microsoft.com/en-us/library/ms717065(VS.85).aspx
Can anyone kindly translate them into Ruby scripts ?


Thank you very much,


Li


###############################
Speak to a wav file in automation
The following example is written in Visual Basic. It has the same
functionality as the above in C++. After the creation of an SpFileStream
object, a default format, SAFT22kHz16BitMono, is assigned to the object
so that user does not need to explicitly assign a wav format to it
unless a specific wav format is needed. In this example,
ISpeechFileStream.Open creates a wav file, ttstemp.wav, and binds the
FileStream to the file. The third parameter of ISpeechFileStream.Open is
the Boolean, DoEvents. The default of this parameter is set to False.
However, the user should always set it to True to display SAPI events
while playing back the wav file. If the parameter is set to False, no
engine events will be stored in the file, resulting in that no engine
events will be fired during the wav file play back.



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 DoEvents=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



############################
Speak a Text File in Automation
The following code illustrates how to speak a text file in a specific
voice in Visual Basic. This example assumes a text file (ttstemp.txt)
containing the text to be spoken already exists.
ISpeechVoice.SpeakStream is used here to speak an SpFileStream that has
been bound to the file.



Dim FileName As String
Dim FileStream As New SpFileStream
Dim Voice As SpVoice

'Create SAPI voice
Set Voice = New SpVoice

'Assume that ttstemp.txt exists
FileName = "c:\ttstemp.txt"

'Open the text file
FileStream.Open FileName, SSFMOpenForRead, True

'Select Microsoft Sam voice
Set Voice.voice = voice.GetVoices("Name=Microsoft Sam",
"Language=409").Item(0)

'Speak the file stream
Voice.SpeakStream FileStream

'Close the Stream
FileStream.Close

'Release the objects
Set FileStream = Nothing
Set Voice = Nothing
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,578
Members
45,052
Latest member
LucyCarper

Latest Threads

Top