Synthèse de voix avec .Net 3.0
Je vous fais part de mon émerveillement face à .Net 3.0. J'ai découvert ce matin le namespace System.Speech. Ce namespace contient des classes destinées aussi bien à la lecture à haute voix d'un texte, qu'à la reconnaissance vocale.
Donc en bidouillant, j'ai réussi à faire en quelques lignes un programme qui lit à haute voix le texte d'un TextBox.
Il faut utiliser le namespace suivant (après avoir inclu la référence qui va bien) :
using System.Speech.Synthesis;
Puis, au moment du clic sur un bouton, il suffit de taper :
private void button1_Click(object sender, EventArgs e)
{
Prompt p = new Prompt(textBox1.Text);
SpeechSynthesizer synth = new SpeechSynthesizer();
synth.SetOutputToDefaultAudioDevice();
synth.SelectVoice("Microsoft Sam");
synth.Speak(p);
synth.SetOutputToNull();
}
Ca marche parceque sous Windows XP, la voix "Microsoft Sam" est installée par défaut. C'est une voix anglo-saxonne, mais il doit y avoir un moyen d'importer d'autres voix. En tout cas les applications me paraissent énormes.
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :