<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>All the Cool Developers use Speech APIs : System.Speech</title><link>http://blogs.msdn.com/chuckop/archive/tags/System.Speech/default.aspx</link><description>Tags: System.Speech</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Enumerating TTS Engines using System.Speech.Synthesizer</title><link>http://blogs.msdn.com/chuckop/archive/2008/07/30/enumerating-tts-engines-using-system-speech-synthesizer.aspx</link><pubDate>Thu, 31 Jul 2008 00:48:21 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8792542</guid><dc:creator>Charles Oppermann</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/chuckop/comments/8792542.aspx</comments><wfw:commentRss>http://blogs.msdn.com/chuckop/commentrss.aspx?PostID=8792542</wfw:commentRss><description>&lt;p&gt;Here is a quick and dirty C# console application that will list out the installed TTS engines and associated properties.&amp;#160; Make sure you add System.Speech to your project's list of references.&lt;/p&gt;  &lt;pre class="code"&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;System;
&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Collections.Generic;
&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Speech;
&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Speech.Synthesis;
&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Speech.AudioFormat;

&lt;span style="color: blue"&gt;namespace &lt;/span&gt;SelectVoice
{
  &lt;span style="color: blue"&gt;class &lt;/span&gt;&lt;span style="color: #2b91af"&gt;SelectVoice
  &lt;/span&gt;{
    &lt;span style="color: blue"&gt;static void &lt;/span&gt;Main(&lt;span style="color: blue"&gt;string&lt;/span&gt;[] args)
    {
      &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;SelectVoice Example&amp;quot;&lt;/span&gt;);
      &lt;span style="color: #2b91af"&gt;SpeechSynthesizer &lt;/span&gt;ttsSynth = &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #2b91af"&gt;SpeechSynthesizer&lt;/span&gt;();

      &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Listing installed speech synthesizer voices...&amp;quot;&lt;/span&gt;);
      &lt;span style="color: blue"&gt;foreach &lt;/span&gt;(&lt;span style="color: #2b91af"&gt;InstalledVoice &lt;/span&gt;ttsVoice &lt;span style="color: blue"&gt;in &lt;/span&gt;ttsSynth.GetInstalledVoices())
      {
        &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Name:\t{0}&amp;quot;&lt;/span&gt;, ttsVoice.VoiceInfo.Name);
        &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Desc:\t{0}&amp;quot;&lt;/span&gt;, ttsVoice.VoiceInfo.Description);
        &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Id:\t{0}&amp;quot;&lt;/span&gt;, ttsVoice.VoiceInfo.Id);
        &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Gender:\t{0}&amp;quot;&lt;/span&gt;, ttsVoice.VoiceInfo.Gender);
        &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Age:\t{0}&amp;quot;&lt;/span&gt;, ttsVoice.VoiceInfo.Age);

        &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Supported Audio Formats:&amp;quot;&lt;/span&gt;);
        &lt;span style="color: blue"&gt;foreach &lt;/span&gt;(&lt;span style="color: #2b91af"&gt;SpeechAudioFormatInfo &lt;/span&gt;audioFormat &lt;span style="color: blue"&gt;in &lt;/span&gt;ttsVoice.VoiceInfo.SupportedAudioFormats)
        {
          &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;\tEncodingFormat:\t{0}&amp;quot;&lt;/span&gt;, audioFormat.EncodingFormat);
          &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;\tChannelCount:\t{0}&amp;quot;&lt;/span&gt;, audioFormat.ChannelCount);
          &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;\tBits/sec:\t{0}&amp;quot;&lt;/span&gt;, audioFormat.BitsPerSample);
          &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;\tAvg Bytes/sec:\t{0}&amp;quot;&lt;/span&gt;, audioFormat.AverageBytesPerSecond);
          &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;\tSamples/sec:\t{0}&amp;quot;&lt;/span&gt;, audioFormat.SamplesPerSecond);
          &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;\tBlockAlign:\t{0}&amp;quot;&lt;/span&gt;, audioFormat.BlockAlign);
        }

        &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Additional Information:&amp;quot;&lt;/span&gt;);
        &lt;span style="color: blue"&gt;foreach&lt;/span&gt;(&lt;span style="color: #2b91af"&gt;KeyValuePair&lt;/span&gt;&amp;lt;&lt;span style="color: blue"&gt;string&lt;/span&gt;, &lt;span style="color: blue"&gt;string&lt;/span&gt;&amp;gt; kvp &lt;span style="color: blue"&gt;in &lt;/span&gt;ttsVoice.VoiceInfo.AdditionalInfo)
          &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;\t{0}:  {1}&amp;quot;&lt;/span&gt;, kvp.Key, kvp.Value);
        &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine();
      }
    &lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Finished listing installed voices.&amp;quot;&lt;/span&gt;);

    ttsSynth.SelectVoice(&lt;span style="color: #a31515"&gt;&amp;quot;Microsoft Anna&amp;quot;&lt;/span&gt;);
    ttsSynth.Speak(&lt;span style="color: #a31515"&gt;&amp;quot;Greetings, my name is &amp;quot; &lt;/span&gt;+ ttsSynth.Voice.Name);&lt;br /&gt;    }
  }
}&lt;/pre&gt;
&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8792542" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/chuckop/archive/tags/Speech+-+APIs/default.aspx">Speech - APIs</category><category domain="http://blogs.msdn.com/chuckop/archive/tags/Text+to+Speech/default.aspx">Text to Speech</category><category domain="http://blogs.msdn.com/chuckop/archive/tags/System.Speech/default.aspx">System.Speech</category></item></channel></rss>