views:

842

answers:

1

I have successfully managed to get System.Speech.Synthesis to read English text in arbitrary voices Anna and Sam. My next task is to localize my application to correctly read Spanish text to our Spanish-speaking clientele.

However, I don't think I am asking the right questions, b/c I cannot find in documentation, forum, group or technology write-up any clear explanation on how this might be done.

1st: Am I correct in saying that there is no setting on the SpeechSynthesizer class or any other Text-To-Speech object? In other words, is it only a matter of installing the correct voice that will read with a Spanish "accent"?

2nd: How does one do this? I have seen links for Spanish libraries that I have tried installing, but I am never able to see these new voices in my Windows XP Speech control panel or in my application's GetInstalledVoices() call.

I am using .Net 3.5 SP 1 one Windows XP SP3, and my code is using Visual Studio 2..8.

If I am missing details, please let me know.

I would appreciate any help. V

A: 

having done this before..

First thing you need to do is get a spanish "Voice Font"..

See http://www.naturalvoices.att.com/

The next thing you need to do is translate your text from english to spanish.

Then you pass your spanish translation into the TTS engine, using the spanish voice font.

Speaker.SelectVoice("<voiceName>");
datacop
Datacop, Thanks for the quick reply!Is all of this available through Microsoft's .Net 3.5 SpeechSynthesizer code?And is it true that the only way to hook up the correct "accent" is by selecting voice? It doesn't appear to have anything to do with Locale settings. I tried setting my OS to Spanish, and likewise in the software, and it still spoke as American Anna.Finally, boy, it's not obvious how you find the Voice Fonts.... Still looking....
VSmirk
Excellent. I think your link only send me ultimately to Wizzard Software. Is getting a software license the only way to do this?
VSmirk
The MS Speech code is what "renders" the text to audio..The only way to get the "proper" spanish translation is to use a spanish voice font file.Imagine this, you're creating a word document and you use wingdings font to create a series of images. Now if you give that word document to someone else who doesn't have that font, when they open the document it's not going to look right.There are other voice font distributers than Wizzard (I don't have any references since I'm not at the office, but google should help).. but yes, you need a spanish voice font to render spanish.
datacop