RecognizeCompletedEventArgs.Result Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft das Erkennungsergebnis ab.
public:
property System::Speech::Recognition::RecognitionResult ^ Result { System::Speech::Recognition::RecognitionResult ^ get(); };
public System.Speech.Recognition.RecognitionResult Result { get; }
member this.Result : System.Speech.Recognition.RecognitionResult
Public ReadOnly Property Result As RecognitionResult
Eigenschaftswert
Das Erkennungsergebnis, wenn der Erkennungsvorgang erfolgreich war; andernfalls null
.
Beispiele
Im folgenden Beispiel wird die asynchrone Spracherkennung für eine Spracherkennungsgrammatik mithilfe der SpeechRecognitionEngine.RecognizeAsync -Methode mit der Prozesserkennung durchgeführt. Im Beispiel werden -Objekte und GrammarBuilder verwendetChoices, um die Spracherkennungsgrammatik zu erstellen, bevor sie in ein -Objekt integriert Grammar wird. Ein Handler für das SpeechRecognitionEngine.RecognizeCompleted Ereignis gibt Informationen zum Erkennungsvorgang an die Konsole aus.
using System;
using System.Speech.Recognition;
namespace SampleRecognition
{
class Program
{
private static SpeechRecognitionEngine recognizer;
public static void Main(string[] args)
{
// Initialize a SpeechRecognitionEngine object and set its input.
recognizer = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"));
recognizer.SetInputToDefaultAudioDevice();
// Configure recognition parameters.
recognizer.InitialSilenceTimeout = TimeSpan.FromSeconds(5.0);
recognizer.BabbleTimeout = TimeSpan.FromSeconds(3.0);
recognizer.EndSilenceTimeout = TimeSpan.FromSeconds(1.0);
recognizer.EndSilenceTimeoutAmbiguous = TimeSpan.FromSeconds(1.0);
// Add a handler for the LoadGrammarCompleted event.
recognizer.LoadGrammarCompleted +=
new EventHandler<LoadGrammarCompletedEventArgs>(recognizer_LoadGrammarCompleted);
// Add a handler for the RecognizeCompleted event.
recognizer.RecognizeCompleted +=
new EventHandler<RecognizeCompletedEventArgs>(recognizer_RecognizeCompleted);
// Create a speech recognition grammar and build it into a Grammar object.
Choices bankingMenu = new Choices(new string[]
{ "Access accounts", "Transfer funds", "Pay bills", "Get loan balance" });
GrammarBuilder banking = new GrammarBuilder(bankingMenu);
Grammar bankGrammar = new Grammar(banking);
bankGrammar.Name = "Banking Menu";
// Load the Grammar objects to the recognizer.
recognizer.LoadGrammarAsync(bankGrammar);
// Start asynchronous, continuous recognition.
recognizer.RecognizeAsync();
// Keep the console window open.
Console.ReadLine();
}
// Handle the RecognizeCompleted event.
static void recognizer_RecognizeCompleted(object sender, RecognizeCompletedEventArgs e)
{
if (e.Error != null)
{
Console.WriteLine(
"RecognizeCompleted, error occurred during recognition: {0}", e.Error);
return;
}
if (e.InitialSilenceTimeout || e.BabbleTimeout)
{
Console.WriteLine(
"RecognizeCompleted: BabbleTimeout({0}), InitialSilenceTimeout({1}).",
e.BabbleTimeout, e.InitialSilenceTimeout);
return;
}
if (e.InputStreamEnded)
{
Console.WriteLine(
"RecognizeCompleted: AudioPosition({0}), InputStreamEnded({1}).",
e.AudioPosition, e.InputStreamEnded);
}
if (e.Result != null)
{
Console.WriteLine(
"RecognizeCompleted: Grammar ({0}), Text ({1}), Confidence ({2}), AudioPosition ({3}).",
e.Result.Grammar.Name, e.Result.Text, e.Result.Confidence, e.AudioPosition);
}
else
{
Console.WriteLine("RecognizeCompleted: No result.");
}
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
// Handle the LoadGrammarCompleted event.
static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e)
{
string grammarName = e.Grammar.Name;
bool grammarLoaded = e.Grammar.Loaded;
bool grammarEnabled = e.Grammar.Enabled;
if (e.Error != null)
{
Console.WriteLine("LoadGrammar for {0} failed with a {1}.",
grammarName, e.Error.GetType().Name);
// Add exception handling code here.
}
Console.WriteLine("Grammar {0} {1} loaded and {2} enabled.", grammarName,
(grammarLoaded) ? "is" : "is not", (grammarEnabled) ? "is" : "is not");
}
}
}
Hinweise
Das RecognitionResult -Objekt wird von RecognizedPhrase abgeleitet und enthält vollständige Informationen zu einem Ausdruck, der von einem Erkennungsvorgang zurückgegeben wird.