The Bing Speech Recognition Control

 

The Bing Speech Recognition Control enables a Windows 8, Windows 8.1, or Windows RT machine to convert audio speech input to written text. It does this by receiving audio data from a microphone, sending the audio data to a web service for analysis, and then returning its best interpretations of user speech as text.

Uses of speech recognition

When you embed the Bing Speech Recognition Control in an application, you control how your application interprets the text returned by the Speech Recognition Service. By linking to recognized patterns, such as e-mails addresses and URIs, you can link that text to common actions such as sending an e-mail or visiting a web site. You can also combine Speech Recognition with other services such as Bing Translator or Bing Search to translate spoken words or look up a recipe without using your hands.

Speech recognition basics

The Bing Speech Recognition Control consists of the SpeechRecognizerUx class, which is a XAML control, and the Bing.Speech Namespace, which provides the supporting API. HTML/JavaScript users can emulate the SpeechRecognizerUx control by creating a <DIV> element with the data-win-control attribute set to "BingWinJS.SpeechRecognizerUx". The SpeechRecognizerUx control appears as a black bar when you start a speech recognition session, and contains the necessary UI to monitor or end speech recognition. You can add the control and API to any Windows Store application. For more information about working with the SpeechRecognizerUx control, see How to: Add the Bing Speech Recognition Control to an application with the SpeechRecognizerUx class

If you want to create a custom speech recognition UI, you can use the APIs in the Bing.Speech namespace without putting a SpeechRecognizerUx control on the page. Instead, you can use the methods and events of the SpeechRecognizer class with your chosen UI elements. For more information, see How to: Add the Bing Speech Recognition Control to an application with a custom UI.

End users must have Windows 8 or 8.1 or Windows RT installed to use applications that include Bing Speech Recognition. Headset microphones are recommended.

As of the April 2014 update, the following language options are supported:

  • de-DE – German (Germany)

  • en–US – English (Unites States)

  • en-GB – English (Great Britain)

  • es-ES – Spanish (Spain)

  • fr-FR – French (France)

  • it-IT – Italian (Italy)

  • zh-CN – Chinese (China)

Bing Speech Subscription Requirements

You can install the Bing Speech Recognition control for Windows 8 or for Windows 8.1 directly from the Visual Studio Gallery, or from the Extension Manager in Visual Studio.

To gain access to the Bing Speech Recognition Control and the web service that it depends on, you must subscribe at the The Windows Azure Data Marketplace, and then register your application. The subscription is free for the first 500,000 service calls per month.

When you are ready to publish your application, you can do so on the Marketplace. You can strong-name your application.

For more information, see How to: Register and install the Bing Speech Recognition Control.

Key API for speech recognition

API

Description

SpeechRecognizerUx class

The class that represents the XAML control.

SpeechRecognizer class

Provides the means to start, stop, and monitor speech recognition in an application.

SpeechRecognizer.RecognizeSpeechToTextAsync() method

Starts a speech recognition session, which captures and interprets user speech, and then returns the results as a SpeechRecognitionResult object.

SpeechRecognizer.AudioCaptureStateChanged event

Raised when the current speech recognition session moves from one state to another.

SpeechRecognizer.RequestCancelOperation() method

Interrupts speech recognition and returns control to the caller. This method can be called at any point in the speech recognition process.

SpeechRecognitionResult class

Contains the results of a speech recognition session.

In this section