Breaking

Search Here

11 November 2014

console text to speech application in c# paths


A Very Easy Introduction to Microsoft .NET Speech Synthesis (VB, C#, C++)

Introduction
This code is an introduction on how to use the new System.Speech class in the .NET Framework v3.0 and v3.5. The sample source code includes an application and the source code is provided in all three .NET languages (VB, C++, C#). It is a simple Windows application and shows how to use text to speech and how to export the speech to a WAV file. The source code was written in Visual Studio 2008 using .NET 3.5.

Namespaces
First, we need to reference the System.Speech assembly from the application. From the Project menu, choose Add Reference. The from the .NET tab, highlight System.Speech and choose OK.

// C#
using System.Speech.Synthesis;

// C++
using namespace System::Speech::Synthesis;

Declarations
Next, we need to declare and instantiate a speech object. The class is System.Speech.Synthesis.Speechsynthesizer. This one class has enough properties and methods to speak a string using the default language and voice of the OS. In Microsoft Windows Vista, the default voice is Microsoft Ana. For Windows XP, it's Microsoft Sam. You can install additional voices, but I'll leave that to another article.

// C#
SpeechSynthesizer speaker = new SpeechSynthesizer();

// C++
public: SpeechSynthesizer speaker;

Usage

Finally, we call the Speak or SpeakAsync method of the object passing in a string containing the text we want spoken.

// C#
speaker.Rate = 1;
speaker.Volume = 100;
speaker.Speak("Hello world.");

You can see from the image that I have also included settings for speaking rate and volume. The sample programs also include code for saving the spoken string to a WAV file. Then you can set your system's sounds to the WAV files you create and your computer will sound like Dr. Falkan's. Would you like to play a game?

// CS
speaker.SetOutputToWaveFile("c:\soundfile.wav");
speaker.Speak("Hellow world.");
speaker.SetOutputToDefaultAudioDevice();
//Must remember to reset out device or the next call to speak 
//will try to write to a file

No comments:

Post a Comment

Hello all, if you have any doubt feel free comment

Comments