Search code examples
c#windows-phone-8speech-to-textunauthorizedaccessexcepti

UnauthorizedAccessException when initializing SpeechSynthesizer


I'm using Microsofts SpeechSynthesizer to create audio output for my Windows Phone app. I use this code

private async void TextToSpeech_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
    SpeechSynthesizer synth = new SpeechSynthesizer();

    await synth.SpeakTextAsync("You have a meeting with Peter in 15 minutes.");
}

I get this exception:

{System.UnauthorizedAccessException: Access is denied.

at Windows.Phone.Speech.Synthesis.SpeechSynthesizer..ctor()
at NerdQuiz.Question.<TextToSpeech_Tap>d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<ThrowAsync>b__0(Object state)}

I found out that the error occurs at

new SpeechSynthesizer();

Solution

  • Make sure you have added the capability ID_CAP_SPEECH_RECOGNITION to the application manifest (WMAppManifest.xml).