Text to speech

howester77

Active member
Joined
Aug 5, 2005
Messages
38
Programming Experience
5-10
I am creating a text to speech program using Speechlib, except, I want the program to read the text in a different language, say french. How do I change the Speechlib to french?
 
I reckon you already got the Speech SDK 5.1. You're lucky, there are not many (free) voices for MS Speech, for ages only the american Mike, Mary and Sam has been available.

Recently 2005 MS released three new language packages: british, french and german, with two new voices each. Download MS Reader first http://www.microsoft.com/reader/default.asp then one or more of the language packs from http://www.microsoft.com/reader/developers/downloads/tts.asp (it won't install if Reader isn't installed first).

You can now list and test the voices in Speechlib. The two new french voices are Veronique and Pierre, germans are Stefan and Anna, british are Michael and Michelle.

As I've heard there exist some "pay-voices" you can search to find also.
 
thanks for the link. is there any way to change the speaker? for example, change it from microsoft sam to pierre in your program?
 
Of course, that's the point of it all.. you'll find it documented in the SDK, here is a small sample for a listbox and a button on a form:
VB.NET:
'first Add Reference to Microsoft Speech Object Library (COM page listing)
 
'standard (sender, e) method parameters shortened
 
Dim s As New SpeechLib.SpVoice
 
Private Sub Form1_Load(sender, e) Handles MyBase.Load
  Dim tk As SpeechLib.SpObjectToken
  For Each tk In s.GetVoices
    ListBox1.Items.Add(tk.GetDescription)
  Next
End Sub
 
Private Sub ListBox1_SelectedIndexChanged(sender, e) Handles ListBox1.SelectedIndexChanged
  s.Voice = s.GetVoices.Item(ListBox1.SelectedIndex)
End Sub
 
Private Sub btnSpeak_Click(sender, e) Handles btnSpeak.Click
  s.Speak("Hello, this is a new voice.")
End Sub
You can also modify voice parameters like pitch and reading speed with the integrated Xml based voice commands.
 
Back
Top