Export (0) Print
Expand All

RecognitionResult Class

Represents the result of recognition engine on audio input as detailed information about the best candidate phrases matching phrase, and a list of all candidate matching phrases.

Namespace: Microsoft.Speech.Recognition
Assembly: Microsoft.Speech (in microsoft.speech.dll)

[SerializableAttribute] 
[DebuggerDisplayAttribute("{DebuggerDisplayString ()}")] 
public sealed class RecognitionResult : RecognizedPhrase, ISerializable
/** @attribute SerializableAttribute() */ 
/** @attribute DebuggerDisplayAttribute("{DebuggerDisplayString ()}") */ 
public final class RecognitionResult extends RecognizedPhrase implements ISerializable
SerializableAttribute 
DebuggerDisplayAttribute("{DebuggerDisplayString ()}") 
public final class RecognitionResult extends RecognizedPhrase implements ISerializable

An instance of RecognitionResult returned by a speech recognition operation provides both:

  • Detailed information about the phrase determined by to be the best candidate for matching audio input.

  • A list of all candidate phrases, as RecognizedPhrase objects, ordered by confidence level, and obtained by the Alternates member of

RecognitionResult inherits from RecognizedPhrase and is serializable and

An application typically obtains an instance of RecognitionResult from the Result member of the instance of a class derived from RecognitionEventArgs and passed by a speech recognition engine to handlers of SpeechHypothesized, SpeechRecognized or SpeechRecognitionRejected events generated by SpeechRecognizer and SpeechRecognitionEngine, as well as SpeechRecognized events generated by Grammar.


System.Object
   Microsoft.Speech.Recognition.RecognizedPhrase
    Microsoft.Speech.Recognition.RecognitionResult

The example below use an instance of RecognitionResult to display information about the results of a speech recognition operation.


       // Displays the semantics, rules, and alternates of the result.
        private void DisplayResult(RecognitionEventArgs eventArgs)
        {

            // Clear results, semantic XML, semantics tree, and alternates.
            _recognitionSmlBrowser.Navigate("about:blank");
            _semanticsTreeView.Nodes.Clear();
            _alternatesListBox.Items.Clear();
            _recognitionInfo.Text = null;
            _recognizedTextDisplay.Text = null;


            //Obtain result from RecognitionEventArg passed in.

            
            if (eventArgs != null && eventArgs.Result != null)
            {
                RecognitionResult result = eventArgs.Result;
                //Set Text color on the basis of the event type passed in.
                _recognitionInfo.Text = null;
                switch (eventArgs.GetType().ToString())
                {

                    case "Microsoft.Speech.Recognition.SpeechHypothesizedEventArgs":
                       _recognizedTextDisplay.ForeColor = Color.Black;
                        _recognizedTextDisplay.Text = result.Text;
                        _recognitionInfo.Text = null;
                        break;
                    case "Microsoft.Speech.Recognition.SpeechRecognitionRejectedEventArgs":
                        _recognizedTextDisplay.ForeColor = Color.OrangeRed;
                        _recognizedTextDisplay.Text ="Unable to Recognize Input";
                        DisplaySemanticsSML(result);
                        DisplaySemanticsTreeView(result);
                        _recognitionInfo.Text = null;
                        break;
                    case "Microsoft.Speech.Recognition.SpeechRecognizedEventArgs":
                        _recognizedTextDisplay.ForeColor = Color.Green;
                        _recognizedTextDisplay.Text = result.Text;
                        _recognitionInfo.Text =
                            "Confidence Level:    " + result.Confidence + Environment.NewLine
                          + "Recognizing Grammar: " + result.Grammar.Name + Environment.NewLine
                          + ((result.Grammar.RuleName != null) ? ("Recognizing Rule   : " + result.Grammar.RuleName) : "");
                        DisplaySemanticsSML(result);
                        DisplaySemanticsTreeView(result);
                        break;
                    default:
                        _recognizedTextDisplay.ForeColor = Color.Black;
                        break;
                }

                _recognizedTextDisplay.Show();
                _recognitionInfo.Show();

                DisplayAlternates(result);

            }
        }

All public static (Shared in Visual Basic) members of this type are thread-safe. Instance members are not guaranteed to be thread-safe.

Development Platforms

Windows XP Professional with Service Pack 2 (SP2), Windows Server 2003, Windows Vista Ultimate Edition, Windows Vista Business Edition, Windows Vista Enterprise Edition

Target Platforms

Show:
© 2014 Microsoft