Forum: Ruby need help with code translation from VB

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Li C. (Guest)
on 2008-10-13 04:15
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
Robert K. (Guest)
on 2008-10-13 12:40
(Received via mailing list)
2008/10/13 Li Chen <removed_email_address@domain.invalid>:
> 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 ?

How much are you willing to pay?

robert
Josef 'Jupp' Schugt (Guest)
on 2008-10-13 14:14
(Received via mailing list)
On Mon, 13 Oct 2008 02:12:26 +0200, Li Chen 
<removed_email_address@domain.invalid> wrote:

>  http://msdn.microsoft.com/en-us/library/ms717065(VS.85).aspx

Using properly encoded URLs makes life easier:

http://msdn.microsoft.com/en-us/library/ms717065%2...

Josef 'Jupp' Schugt
This topic is locked and can not be replied to.