FAQ about The Server Speech Platform

This post will talk about some frequent questions when using TTS functionality in Microsoft Server Speech Platform.  I will keep it updated as new questions come up.

For the detailed usage of the API, please go to MSDN. 

·     Why SpeechSynthesizer Speak doesn't produce sound on my sound card?

Currently the server voice doesn’t speak to sound card because it is primarily designed for server usage. It is a difference against System.Speech.Synthesizer.

There are serveral ways for you to play the audio from SpeechSynthesizer.

1.  You can speak to wave file first and play that wave file. See SetOutputToWavefile method of SpeechSynthesizer

2.  Use a custom output stream to send the audio bytes to your target device (could be audio device or network socket). See SetOutputAudioStream method.

3.  Speak to a memory stream, and then play the stream with System.Media.SoundPlayer

·     Why SpeechSynthesizer throws an exception that says "No voice installed on the system or none available with the current security setting"?

It could be caused by following reasons:

1. The speech platform runtime is installed, but the language pack is not installed. Make sure you install the TTS language pack. 

2. The speech platform and language pack are installed, but the .net application is compiled as a target platform different from the speech platform. For example, speech platform is x64, but the app is x86.

·     What are the difference between desktop speech API, and server speech API?
Here are some differences between desktop speech API and server speech API from usage perspective.
1. They have different GUIDs for COM object.
2. They have different name space. (System.Speech for Desktop,  Microsoft.Speech for Server)

Comments (7)
  1. Aaron says:

    Thanks for all of the super useful information about the new 10.1 runtime and platform. I'm missing something though… I'm trying to move my System.Speech.Recognition application to Microsoft.Speech.Recognition on WinServer 2008. I'm a newbie, so sorry if this is a dumb question…

    After installing the runtime, sdk, and language packages I still can't add a reference to Microsoft.speech in visual studio. I see System.Speech but not Microsoft.Speech in the list of available .NET references. Do I need to include a dll or something? If so, what/where is it?

    Thanks a TON if you can help 🙂

  2. myblog1 says:


    You can find the microsoft.speech.dll in the installation folder of the SDK.

    It is under Program Files folder.

  3. Aaron says:

    Thanks! Got it!

  4. John says:

    I am trying to use speech recognition (microsoft.speech) in an ASP.NET web service, but it is not working. I have included the necessary references, etc. Is there any reason Microsoft.Speech would not work in a web service?

  5. myblog1 says:


    what is the error or exception message you got?

    I am not familar with using SR in ASP.Net. but the error message could be helpful

  6. Sheng Jiang says:

    Is there something like Windows Speech Recognition Profile Tool to backup/restore the speech profile?

Comments are closed.

Skip to main content