Making your app speak

Making your app speak

[This article is for Windows 8.x and Windows Phone 8.x developers writing Windows Runtime apps. If you’re developing for Windows 10, see the latest documentation]

Adding speech to your app takes only a few lines of code. Can you say "Easy peasy?"

Making your app talk is easy with Windows 8.1, Microsoft Visual Studio 2013, and the SpeechSynthesis namespace.

Adding speech to a C# app

Note   Speech synthesis is only supported in Windows 8.1. Using this code on Windows Phone 8.1 causes an exception to be thrown.


using Windows.Media.SpeechSynthesis; 
using System.Threading.Tasks;
private async Task SayMethod()
{
MediaElement mediaElement = new MediaElement(); 
       var synth = new Windows.Media.SpeechSynthesis.SpeechSynthesizer();
       SpeechSynthesisStream stream = await synth.SynthesizeTextToStreamAsync("Hello World! Windows can talk!");
       mediaElement.SetSource(stream, stream.ContentType);
       mediaElement.Play();
       return;
}


Adding speech to a JavaScript app


    function talk() {
        var audio = new Audio();
        var synth = new Windows.Media.SpeechSynthesis.SpeechSynthesizer();
        synth.synthesizeTextToStreamAsync("Hello world! Windows can talk!").then(function (synthesisStream) {
            var blob = MSApp.createBlobFromRandomAccessStream(synthesisStream.contentType, synthesisStream);
            audio.src = URL.createObjectURL(blob, { oneTimeOnly: true });
            audio.play();
        })
    };


Adding speech to a C++ app


using namespace Windows::Media::SpeechSynthesis;
using namespace Concurrency;

SpeechSynthesizer^ synth;
MediaElement ^media;

void TalkTalkCPP::MainPage::Talk()
{
	synth = ref new SpeechSynthesizer();
	media = ref new MediaElement();
	String^ text = "Hello World!Windows can talk!";
	task<SpeechSynthesisStream ^> speakTask = create_task(synth->SynthesizeTextToStreamAsync(text));
	speakTask.then([this, text](SpeechSynthesisStream ^speechStream)
	{
		media->SetSource(speechStream, speechStream->ContentType);
		media->AutoPlay = true;
		media->Play();
	});
}

Related topics

Speech synthesis sample
SpeechSynthesis

 

 

Show:
© 2016 Microsoft